gogol-firestore 0.4.0 → 0.5.0
raw patch · 33 files changed
+5384/−4987 lines, 33 filesdep ~gogol-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: gogol-core
API changes (from Hackage documentation)
+ Network.Google.FireStore: ftIncrement :: Lens' FieldTransform (Maybe Value)
+ Network.Google.FireStore: ftMaximum :: Lens' FieldTransform (Maybe Value)
+ Network.Google.FireStore: ftMinimum :: Lens' FieldTransform (Maybe Value)
+ Network.Google.FireStore.Types: ftIncrement :: Lens' FieldTransform (Maybe Value)
+ Network.Google.FireStore.Types: ftMaximum :: Lens' FieldTransform (Maybe Value)
+ Network.Google.FireStore.Types: ftMinimum :: Lens' FieldTransform (Maybe Value)
Files
- README.md +1/−1
- gen/Network/Google/FireStore.hs +3/−0
- gen/Network/Google/FireStore/Types.hs +5/−2
- gen/Network/Google/FireStore/Types/Product.hs +5131/−4875
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/Get.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/List.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/Patch.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Create.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Delete.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Get.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/List.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/BatchGet.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/BeginTransaction.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Commit.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/CreateDocument.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Delete.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Get.hs +7/−3
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/List.hs +7/−3
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/ListCollectionIds.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Listen.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Patch.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Rollback.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/RunQuery.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Write.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/ExportDocuments.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/ImportDocuments.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Cancel.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Delete.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Get.hs +7/−3
- gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/List.hs +9/−4
- gen/Network/Google/Resource/FireStore/Projects/Locations/Get.hs +7/−3
- gen/Network/Google/Resource/FireStore/Projects/Locations/List.hs +7/−3
- gogol-firestore.cabal +2/−2
README.md view
@@ -8,7 +8,7 @@ ## Version -`0.3.0`+`0.5.0` ## Description
gen/Network/Google/FireStore.hs view
@@ -649,8 +649,11 @@ , fieldTransform , ftFieldPath , ftAppendMissingElements+ , ftMaximum+ , ftMinimum , ftSetToServerValue , ftRemoveAllFromArray+ , ftIncrement -- ** MapValueFields , MapValueFields
gen/Network/Google/FireStore/Types.hs view
@@ -555,8 +555,11 @@ , fieldTransform , ftFieldPath , ftAppendMissingElements+ , ftMaximum+ , ftMinimum , ftSetToServerValue , ftRemoveAllFromArray+ , ftIncrement -- * MapValueFields , MapValueFields@@ -622,8 +625,8 @@ -- | View and manage your data across Google Cloud Platform services cloudPlatformScope :: Proxy '["https://www.googleapis.com/auth/cloud-platform"]-cloudPlatformScope = Proxy;+cloudPlatformScope = Proxy -- | View and manage your Google Cloud Datastore data datastoreScope :: Proxy '["https://www.googleapis.com/auth/datastore"]-datastoreScope = Proxy;+datastoreScope = Proxy
gen/Network/Google/FireStore/Types/Product.hs view
@@ -28,4881 +28,5137 @@ -- only an up-to-date token, to use in the next request. -- -- /See:/ 'writeRequest' smart constructor.-data WriteRequest = WriteRequest'- { _wrStreamToken :: !(Maybe Bytes)- , _wrLabels :: !(Maybe WriteRequestLabels)- , _wrWrites :: !(Maybe [Write])- , _wrStreamId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WriteRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wrStreamToken'------ * 'wrLabels'------ * 'wrWrites'------ * 'wrStreamId'-writeRequest- :: WriteRequest-writeRequest =- WriteRequest'- { _wrStreamToken = Nothing- , _wrLabels = Nothing- , _wrWrites = Nothing- , _wrStreamId = Nothing- }---- | A stream token that was previously sent by the server. The client should--- set this field to the token from the most recent WriteResponse it has--- received. This acknowledges that the client has received responses up to--- this token. After sending this token, earlier tokens may not be used--- anymore. The server may close the stream if there are too many--- unacknowledged responses. Leave this field unset when creating a new--- stream. To resume a stream at a specific point, set this field and the--- \`stream_id\` field. Leave this field unset when creating a new stream.-wrStreamToken :: Lens' WriteRequest (Maybe ByteString)-wrStreamToken- = lens _wrStreamToken- (\ s a -> s{_wrStreamToken = a})- . mapping _Bytes---- | Labels associated with this write request.-wrLabels :: Lens' WriteRequest (Maybe WriteRequestLabels)-wrLabels = lens _wrLabels (\ s a -> s{_wrLabels = a})---- | The writes to apply. Always executed atomically and in order. This must--- be empty on the first request. This may be empty on the last request.--- This must not be empty on all other requests.-wrWrites :: Lens' WriteRequest [Write]-wrWrites- = lens _wrWrites (\ s a -> s{_wrWrites = a}) .- _Default- . _Coerce---- | The ID of the write stream to resume. This may only be set in the first--- message. When left empty, a new write stream will be created.-wrStreamId :: Lens' WriteRequest (Maybe Text)-wrStreamId- = lens _wrStreamId (\ s a -> s{_wrStreamId = a})--instance FromJSON WriteRequest where- parseJSON- = withObject "WriteRequest"- (\ o ->- WriteRequest' <$>- (o .:? "streamToken") <*> (o .:? "labels") <*>- (o .:? "writes" .!= mempty)- <*> (o .:? "streamId"))--instance ToJSON WriteRequest where- toJSON WriteRequest'{..}- = object- (catMaybes- [("streamToken" .=) <$> _wrStreamToken,- ("labels" .=) <$> _wrLabels,- ("writes" .=) <$> _wrWrites,- ("streamId" .=) <$> _wrStreamId])---- | An object representing a latitude\/longitude pair. This is expressed as--- a pair of doubles representing degrees latitude and degrees longitude.--- Unless specified otherwise, this must conform to the--- <http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf WGS84 standard>.--- Values must be within normalized ranges.------ /See:/ 'latLng' smart constructor.-data LatLng = LatLng'- { _llLatitude :: !(Maybe (Textual Double))- , _llLongitude :: !(Maybe (Textual Double))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'LatLng' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'llLatitude'------ * 'llLongitude'-latLng- :: LatLng-latLng =- LatLng'- { _llLatitude = Nothing- , _llLongitude = Nothing- }---- | The latitude in degrees. It must be in the range [-90.0, +90.0].-llLatitude :: Lens' LatLng (Maybe Double)-llLatitude- = lens _llLatitude (\ s a -> s{_llLatitude = a}) .- mapping _Coerce---- | The longitude in degrees. It must be in the range [-180.0, +180.0].-llLongitude :: Lens' LatLng (Maybe Double)-llLongitude- = lens _llLongitude (\ s a -> s{_llLongitude = a}) .- mapping _Coerce--instance FromJSON LatLng where- parseJSON- = withObject "LatLng"- (\ o ->- LatLng' <$>- (o .:? "latitude") <*> (o .:? "longitude"))--instance ToJSON LatLng where- toJSON LatLng'{..}- = object- (catMaybes- [("latitude" .=) <$> _llLatitude,- ("longitude" .=) <$> _llLongitude])---- | The result of applying a write.------ /See:/ 'writeResult' smart constructor.-data WriteResult = WriteResult'- { _wrUpdateTime :: !(Maybe DateTime')- , _wrTransformResults :: !(Maybe [Value])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WriteResult' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wrUpdateTime'------ * 'wrTransformResults'-writeResult- :: WriteResult-writeResult =- WriteResult'- { _wrUpdateTime = Nothing- , _wrTransformResults = Nothing- }---- | The last update time of the document after applying the write. Not set--- after a \`delete\`. If the write did not actually change the document,--- this will be the previous update_time.-wrUpdateTime :: Lens' WriteResult (Maybe UTCTime)-wrUpdateTime- = lens _wrUpdateTime (\ s a -> s{_wrUpdateTime = a})- . mapping _DateTime---- | The results of applying each DocumentTransform.FieldTransform, in the--- same order.-wrTransformResults :: Lens' WriteResult [Value]-wrTransformResults- = lens _wrTransformResults- (\ s a -> s{_wrTransformResults = a})- . _Default- . _Coerce--instance FromJSON WriteResult where- parseJSON- = withObject "WriteResult"- (\ o ->- WriteResult' <$>- (o .:? "updateTime") <*>- (o .:? "transformResults" .!= mempty))--instance ToJSON WriteResult where- toJSON WriteResult'{..}- = object- (catMaybes- [("updateTime" .=) <$> _wrUpdateTime,- ("transformResults" .=) <$> _wrTransformResults])---- | Represents a single field in the database. Fields are grouped by their--- \"Collection Group\", which represent all collections in the database--- with the same id.------ /See:/ 'googleFirestoreAdminV1Field' smart constructor.-data GoogleFirestoreAdminV1Field = GoogleFirestoreAdminV1Field'- { _gfavfIndexConfig :: !(Maybe GoogleFirestoreAdminV1IndexConfig)- , _gfavfName :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1Field' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavfIndexConfig'------ * 'gfavfName'-googleFirestoreAdminV1Field- :: GoogleFirestoreAdminV1Field-googleFirestoreAdminV1Field =- GoogleFirestoreAdminV1Field'- { _gfavfIndexConfig = Nothing- , _gfavfName = Nothing- }---- | The index configuration for this field. If unset, field indexing will--- revert to the configuration defined by the \`ancestor_field\`. To--- explicitly remove all indexes for this field, specify an index config--- with an empty list of indexes.-gfavfIndexConfig :: Lens' GoogleFirestoreAdminV1Field (Maybe GoogleFirestoreAdminV1IndexConfig)-gfavfIndexConfig- = lens _gfavfIndexConfig- (\ s a -> s{_gfavfIndexConfig = a})---- | A field name of the form--- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/fields\/{field_path}\`--- A field path may be a simple field name, e.g. \`address\` or a path to--- fields within map_value , e.g. \`address.city\`, or a special field--- path. The only valid special field is \`*\`, which represents any field.--- Field paths may be quoted using \` (backtick). The only character that--- needs to be escaped within a quoted field path is the backtick character--- itself, escaped using a backslash. Special characters in field paths--- that must be quoted include: \`*\`, \`.\`, \`\`\` (backtick), \`[\`,--- \`]\`, as well as any ascii symbolic characters. Examples: (Note:--- Comments here are written in markdown syntax, so there is an additional--- layer of backticks to represent a code block) \`\\\`address.city\\\`\`--- represents a field named \`address.city\`, not the map key \`city\` in--- the field \`address\`. \`\\\`*\\\`\` represents a field named \`*\`, not--- any field. A special \`Field\` contains the default indexing settings--- for all fields. This field\'s resource name is:--- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/__default__\/fields\/*\`--- Indexes defined on this \`Field\` will be applied to all fields which do--- not have their own \`Field\` index configuration.-gfavfName :: Lens' GoogleFirestoreAdminV1Field (Maybe Text)-gfavfName- = lens _gfavfName (\ s a -> s{_gfavfName = a})--instance FromJSON GoogleFirestoreAdminV1Field where- parseJSON- = withObject "GoogleFirestoreAdminV1Field"- (\ o ->- GoogleFirestoreAdminV1Field' <$>- (o .:? "indexConfig") <*> (o .:? "name"))--instance ToJSON GoogleFirestoreAdminV1Field where- toJSON GoogleFirestoreAdminV1Field'{..}- = object- (catMaybes- [("indexConfig" .=) <$> _gfavfIndexConfig,- ("name" .=) <$> _gfavfName])---- | Options for creating a new transaction.------ /See:/ 'transactionOptions' smart constructor.-data TransactionOptions = TransactionOptions'- { _toReadWrite :: !(Maybe ReadWrite)- , _toReadOnly :: !(Maybe ReadOnly)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TransactionOptions' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'toReadWrite'------ * 'toReadOnly'-transactionOptions- :: TransactionOptions-transactionOptions =- TransactionOptions'- { _toReadWrite = Nothing- , _toReadOnly = Nothing- }---- | The transaction can be used for both read and write operations.-toReadWrite :: Lens' TransactionOptions (Maybe ReadWrite)-toReadWrite- = lens _toReadWrite (\ s a -> s{_toReadWrite = a})---- | The transaction can only be used for read operations.-toReadOnly :: Lens' TransactionOptions (Maybe ReadOnly)-toReadOnly- = lens _toReadOnly (\ s a -> s{_toReadOnly = a})--instance FromJSON TransactionOptions where- parseJSON- = withObject "TransactionOptions"- (\ o ->- TransactionOptions' <$>- (o .:? "readWrite") <*> (o .:? "readOnly"))--instance ToJSON TransactionOptions where- toJSON TransactionOptions'{..}- = object- (catMaybes- [("readWrite" .=) <$> _toReadWrite,- ("readOnly" .=) <$> _toReadOnly])---- | The \`Status\` type defines a logical error model that is suitable for--- different programming environments, including REST APIs and RPC APIs. It--- is used by [gRPC](https:\/\/github.com\/grpc). The error model is--- designed to be: - Simple to use and understand for most users - Flexible--- enough to meet unexpected needs # Overview The \`Status\` message--- contains three pieces of data: error code, error message, and error--- details. The error code should be an enum value of google.rpc.Code, but--- it may accept additional error codes if needed. The error message should--- be a developer-facing English message that helps developers *understand*--- and *resolve* the error. If a localized user-facing error message is--- needed, put the localized message in the error details or localize it in--- the client. The optional error details may contain arbitrary information--- about the error. There is a predefined set of error detail types in the--- package \`google.rpc\` that can be used for common error conditions. #--- Language mapping The \`Status\` message is the logical representation of--- the error model, but it is not necessarily the actual wire format. When--- the \`Status\` message is exposed in different client libraries and--- different wire protocols, it can be mapped differently. For example, it--- will likely be mapped to some exceptions in Java, but more likely mapped--- to some error codes in C. # Other uses The error model and the--- \`Status\` message can be used in a variety of environments, either with--- or without APIs, to provide a consistent developer experience across--- different environments. Example uses of this error model include: ---- Partial errors. If a service needs to return partial errors to the--- client, it may embed the \`Status\` in the normal response to indicate--- the partial errors. - Workflow errors. A typical workflow has multiple--- steps. Each step may have a \`Status\` message for error reporting. ---- Batch operations. If a client uses batch request and batch response, the--- \`Status\` message should be used directly inside batch response, one--- for each error sub-response. - Asynchronous operations. If an API call--- embeds asynchronous operation results in its response, the status of--- those operations should be represented directly using the \`Status\`--- message. - Logging. If some API errors are stored in logs, the message--- \`Status\` could be used directly after any stripping needed for--- security\/privacy reasons.------ /See:/ 'status' smart constructor.-data Status = Status'- { _sDetails :: !(Maybe [StatusDetailsItem])- , _sCode :: !(Maybe (Textual Int32))- , _sMessage :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Status' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sDetails'------ * 'sCode'------ * 'sMessage'-status- :: Status-status =- Status'- { _sDetails = Nothing- , _sCode = Nothing- , _sMessage = Nothing- }---- | A list of messages that carry the error details. There is a common set--- of message types for APIs to use.-sDetails :: Lens' Status [StatusDetailsItem]-sDetails- = lens _sDetails (\ s a -> s{_sDetails = a}) .- _Default- . _Coerce---- | The status code, which should be an enum value of google.rpc.Code.-sCode :: Lens' Status (Maybe Int32)-sCode- = lens _sCode (\ s a -> s{_sCode = a}) .- mapping _Coerce---- | A developer-facing error message, which should be in English. Any--- user-facing error message should be localized and sent in the--- google.rpc.Status.details field, or localized by the client.-sMessage :: Lens' Status (Maybe Text)-sMessage = lens _sMessage (\ s a -> s{_sMessage = a})--instance FromJSON Status where- parseJSON- = withObject "Status"- (\ o ->- Status' <$>- (o .:? "details" .!= mempty) <*> (o .:? "code") <*>- (o .:? "message"))--instance ToJSON Status where- toJSON Status'{..}- = object- (catMaybes- [("details" .=) <$> _sDetails,- ("code" .=) <$> _sCode,- ("message" .=) <$> _sMessage])---- | Service-specific metadata associated with the operation. It typically--- contains progress information and common metadata such as create time.--- Some services might not provide such metadata. Any method that returns a--- long-running operation should document the metadata type, if any.------ /See:/ 'googleLongrunningOperationMetadata' smart constructor.-newtype GoogleLongrunningOperationMetadata = GoogleLongrunningOperationMetadata'- { _glomAddtional :: HashMap Text JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleLongrunningOperationMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'glomAddtional'-googleLongrunningOperationMetadata- :: HashMap Text JSONValue -- ^ 'glomAddtional'- -> GoogleLongrunningOperationMetadata-googleLongrunningOperationMetadata pGlomAddtional_ =- GoogleLongrunningOperationMetadata'- { _glomAddtional = _Coerce # pGlomAddtional_- }---- | Properties of the object. Contains field \'type with type URL.-glomAddtional :: Lens' GoogleLongrunningOperationMetadata (HashMap Text JSONValue)-glomAddtional- = lens _glomAddtional- (\ s a -> s{_glomAddtional = a})- . _Coerce--instance FromJSON GoogleLongrunningOperationMetadata- where- parseJSON- = withObject "GoogleLongrunningOperationMetadata"- (\ o ->- GoogleLongrunningOperationMetadata' <$>- (parseJSONObject o))--instance ToJSON GoogleLongrunningOperationMetadata- where- toJSON = toJSON . _glomAddtional---- | A precondition on a document, used for conditional operations.------ /See:/ 'precondition' smart constructor.-data Precondition = Precondition'- { _pExists :: !(Maybe Bool)- , _pUpdateTime :: !(Maybe DateTime')- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Precondition' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pExists'------ * 'pUpdateTime'-precondition- :: Precondition-precondition =- Precondition'- { _pExists = Nothing- , _pUpdateTime = Nothing- }---- | When set to \`true\`, the target document must exist. When set to--- \`false\`, the target document must not exist.-pExists :: Lens' Precondition (Maybe Bool)-pExists = lens _pExists (\ s a -> s{_pExists = a})---- | When set, the target document must exist and have been last updated at--- that time.-pUpdateTime :: Lens' Precondition (Maybe UTCTime)-pUpdateTime- = lens _pUpdateTime (\ s a -> s{_pUpdateTime = a}) .- mapping _DateTime--instance FromJSON Precondition where- parseJSON- = withObject "Precondition"- (\ o ->- Precondition' <$>- (o .:? "exists") <*> (o .:? "updateTime"))--instance ToJSON Precondition where- toJSON Precondition'{..}- = object- (catMaybes- [("exists" .=) <$> _pExists,- ("updateTime" .=) <$> _pUpdateTime])---- | Options for a transaction that can be used to read and write documents.------ /See:/ 'readWrite' smart constructor.-newtype ReadWrite = ReadWrite'- { _rwRetryTransaction :: Maybe Bytes- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReadWrite' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rwRetryTransaction'-readWrite- :: ReadWrite-readWrite =- ReadWrite'- { _rwRetryTransaction = Nothing- }---- | An optional transaction to retry.-rwRetryTransaction :: Lens' ReadWrite (Maybe ByteString)-rwRetryTransaction- = lens _rwRetryTransaction- (\ s a -> s{_rwRetryTransaction = a})- . mapping _Bytes--instance FromJSON ReadWrite where- parseJSON- = withObject "ReadWrite"- (\ o -> ReadWrite' <$> (o .:? "retryTransaction"))--instance ToJSON ReadWrite where- toJSON ReadWrite'{..}- = object- (catMaybes- [("retryTransaction" .=) <$> _rwRetryTransaction])---- | The request for Firestore.Rollback.------ /See:/ 'rollbackRequest' smart constructor.-newtype RollbackRequest = RollbackRequest'- { _rrTransaction :: Maybe Bytes- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RollbackRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rrTransaction'-rollbackRequest- :: RollbackRequest-rollbackRequest =- RollbackRequest'- { _rrTransaction = Nothing- }---- | The transaction to roll back.-rrTransaction :: Lens' RollbackRequest (Maybe ByteString)-rrTransaction- = lens _rrTransaction- (\ s a -> s{_rrTransaction = a})- . mapping _Bytes--instance FromJSON RollbackRequest where- parseJSON- = withObject "RollbackRequest"- (\ o -> RollbackRequest' <$> (o .:? "transaction"))--instance ToJSON RollbackRequest where- toJSON RollbackRequest'{..}- = object- (catMaybes [("transaction" .=) <$> _rrTransaction])---- | The request for FirestoreAdmin.ExportDocuments.------ /See:/ 'googleFirestoreAdminV1ExportDocumentsRequest' smart constructor.-data GoogleFirestoreAdminV1ExportDocumentsRequest = GoogleFirestoreAdminV1ExportDocumentsRequest'- { _gfavedrCollectionIds :: !(Maybe [Text])- , _gfavedrOutputURIPrefix :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavedrCollectionIds'------ * 'gfavedrOutputURIPrefix'-googleFirestoreAdminV1ExportDocumentsRequest- :: GoogleFirestoreAdminV1ExportDocumentsRequest-googleFirestoreAdminV1ExportDocumentsRequest =- GoogleFirestoreAdminV1ExportDocumentsRequest'- { _gfavedrCollectionIds = Nothing- , _gfavedrOutputURIPrefix = Nothing- }---- | Which collection ids to export. Unspecified means all collections.-gfavedrCollectionIds :: Lens' GoogleFirestoreAdminV1ExportDocumentsRequest [Text]-gfavedrCollectionIds- = lens _gfavedrCollectionIds- (\ s a -> s{_gfavedrCollectionIds = a})- . _Default- . _Coerce---- | The output URI. Currently only supports Google Cloud Storage URIs of the--- form: \`gs:\/\/BUCKET_NAME[\/NAMESPACE_PATH]\`, where \`BUCKET_NAME\` is--- the name of the Google Cloud Storage bucket and \`NAMESPACE_PATH\` is an--- optional Google Cloud Storage namespace path. When choosing a name, be--- sure to consider Google Cloud Storage naming guidelines:--- https:\/\/cloud.google.com\/storage\/docs\/naming. If the URI is a--- bucket (without a namespace path), a prefix will be generated based on--- the start time.-gfavedrOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsRequest (Maybe Text)-gfavedrOutputURIPrefix- = lens _gfavedrOutputURIPrefix- (\ s a -> s{_gfavedrOutputURIPrefix = a})--instance FromJSON- GoogleFirestoreAdminV1ExportDocumentsRequest where- parseJSON- = withObject- "GoogleFirestoreAdminV1ExportDocumentsRequest"- (\ o ->- GoogleFirestoreAdminV1ExportDocumentsRequest' <$>- (o .:? "collectionIds" .!= mempty) <*>- (o .:? "outputUriPrefix"))--instance ToJSON- GoogleFirestoreAdminV1ExportDocumentsRequest where- toJSON- GoogleFirestoreAdminV1ExportDocumentsRequest'{..}- = object- (catMaybes- [("collectionIds" .=) <$> _gfavedrCollectionIds,- ("outputUriPrefix" .=) <$> _gfavedrOutputURIPrefix])---- | Targets being watched have changed.------ /See:/ 'targetChange' smart constructor.-data TargetChange = TargetChange'- { _tcReadTime :: !(Maybe DateTime')- , _tcResumeToken :: !(Maybe Bytes)- , _tcCause :: !(Maybe Status)- , _tcTargetChangeType :: !(Maybe TargetChangeTargetChangeType)- , _tcTargetIds :: !(Maybe [Textual Int32])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TargetChange' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tcReadTime'------ * 'tcResumeToken'------ * 'tcCause'------ * 'tcTargetChangeType'------ * 'tcTargetIds'-targetChange- :: TargetChange-targetChange =- TargetChange'- { _tcReadTime = Nothing- , _tcResumeToken = Nothing- , _tcCause = Nothing- , _tcTargetChangeType = Nothing- , _tcTargetIds = Nothing- }---- | The consistent \`read_time\` for the given \`target_ids\` (omitted when--- the target_ids are not at a consistent snapshot). The stream is--- guaranteed to send a \`read_time\` with \`target_ids\` empty whenever--- the entire stream reaches a new consistent snapshot. ADD, CURRENT, and--- RESET messages are guaranteed to (eventually) result in a new consistent--- snapshot (while NO_CHANGE and REMOVE messages are not). For a given--- stream, \`read_time\` is guaranteed to be monotonically increasing.-tcReadTime :: Lens' TargetChange (Maybe UTCTime)-tcReadTime- = lens _tcReadTime (\ s a -> s{_tcReadTime = a}) .- mapping _DateTime---- | A token that can be used to resume the stream for the given--- \`target_ids\`, or all targets if \`target_ids\` is empty. Not set on--- every target change.-tcResumeToken :: Lens' TargetChange (Maybe ByteString)-tcResumeToken- = lens _tcResumeToken- (\ s a -> s{_tcResumeToken = a})- . mapping _Bytes---- | The error that resulted in this change, if applicable.-tcCause :: Lens' TargetChange (Maybe Status)-tcCause = lens _tcCause (\ s a -> s{_tcCause = a})---- | The type of change that occurred.-tcTargetChangeType :: Lens' TargetChange (Maybe TargetChangeTargetChangeType)-tcTargetChangeType- = lens _tcTargetChangeType- (\ s a -> s{_tcTargetChangeType = a})---- | The target IDs of targets that have changed. If empty, the change--- applies to all targets. For \`target_change_type=ADD\`, the order of the--- target IDs matches the order of the requests to add the targets. This--- allows clients to unambiguously associate server-assigned target IDs--- with added targets. For other states, the order of the target IDs is not--- defined.-tcTargetIds :: Lens' TargetChange [Int32]-tcTargetIds- = lens _tcTargetIds (\ s a -> s{_tcTargetIds = a}) .- _Default- . _Coerce--instance FromJSON TargetChange where- parseJSON- = withObject "TargetChange"- (\ o ->- TargetChange' <$>- (o .:? "readTime") <*> (o .:? "resumeToken") <*>- (o .:? "cause")- <*> (o .:? "targetChangeType")- <*> (o .:? "targetIds" .!= mempty))--instance ToJSON TargetChange where- toJSON TargetChange'{..}- = object- (catMaybes- [("readTime" .=) <$> _tcReadTime,- ("resumeToken" .=) <$> _tcResumeToken,- ("cause" .=) <$> _tcCause,- ("targetChangeType" .=) <$> _tcTargetChangeType,- ("targetIds" .=) <$> _tcTargetIds])---- | The response message for Locations.ListLocations.------ /See:/ 'listLocationsResponse' smart constructor.-data ListLocationsResponse = ListLocationsResponse'- { _llrNextPageToken :: !(Maybe Text)- , _llrLocations :: !(Maybe [Location])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListLocationsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'llrNextPageToken'------ * 'llrLocations'-listLocationsResponse- :: ListLocationsResponse-listLocationsResponse =- ListLocationsResponse'- { _llrNextPageToken = Nothing- , _llrLocations = Nothing- }---- | The standard List next-page token.-llrNextPageToken :: Lens' ListLocationsResponse (Maybe Text)-llrNextPageToken- = lens _llrNextPageToken- (\ s a -> s{_llrNextPageToken = a})---- | A list of locations that matches the specified filter in the request.-llrLocations :: Lens' ListLocationsResponse [Location]-llrLocations- = lens _llrLocations (\ s a -> s{_llrLocations = a})- . _Default- . _Coerce--instance FromJSON ListLocationsResponse where- parseJSON- = withObject "ListLocationsResponse"- (\ o ->- ListLocationsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "locations" .!= mempty))--instance ToJSON ListLocationsResponse where- toJSON ListLocationsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _llrNextPageToken,- ("locations" .=) <$> _llrLocations])---- | A position in a query result set.------ /See:/ 'cursor' smart constructor.-data Cursor = Cursor'- { _cValues :: !(Maybe [Value])- , _cBefore :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Cursor' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cValues'------ * 'cBefore'-cursor- :: Cursor-cursor =- Cursor'- { _cValues = Nothing- , _cBefore = Nothing- }---- | The values that represent a position, in the order they appear in the--- order by clause of a query. Can contain fewer values than specified in--- the order by clause.-cValues :: Lens' Cursor [Value]-cValues- = lens _cValues (\ s a -> s{_cValues = a}) . _Default- . _Coerce---- | If the position is just before or just after the given values, relative--- to the sort order defined by the query.-cBefore :: Lens' Cursor (Maybe Bool)-cBefore = lens _cBefore (\ s a -> s{_cBefore = a})--instance FromJSON Cursor where- parseJSON- = withObject "Cursor"- (\ o ->- Cursor' <$>- (o .:? "values" .!= mempty) <*> (o .:? "before"))--instance ToJSON Cursor where- toJSON Cursor'{..}- = object- (catMaybes- [("values" .=) <$> _cValues,- ("before" .=) <$> _cBefore])---- | Metadata for google.longrunning.Operation results from--- FirestoreAdmin.ImportDocuments.------ /See:/ 'googleFirestoreAdminV1ImportDocumentsMetadata' smart constructor.-data GoogleFirestoreAdminV1ImportDocumentsMetadata = GoogleFirestoreAdminV1ImportDocumentsMetadata'- { _gfavidmProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavidmStartTime :: !(Maybe DateTime')- , _gfavidmInputURIPrefix :: !(Maybe Text)- , _gfavidmCollectionIds :: !(Maybe [Text])- , _gfavidmProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavidmEndTime :: !(Maybe DateTime')- , _gfavidmOperationState :: !(Maybe GoogleFirestoreAdminV1ImportDocumentsMetadataOperationState)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ImportDocumentsMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavidmProgressBytes'------ * 'gfavidmStartTime'------ * 'gfavidmInputURIPrefix'------ * 'gfavidmCollectionIds'------ * 'gfavidmProgressDocuments'------ * 'gfavidmEndTime'------ * 'gfavidmOperationState'-googleFirestoreAdminV1ImportDocumentsMetadata- :: GoogleFirestoreAdminV1ImportDocumentsMetadata-googleFirestoreAdminV1ImportDocumentsMetadata =- GoogleFirestoreAdminV1ImportDocumentsMetadata'- { _gfavidmProgressBytes = Nothing- , _gfavidmStartTime = Nothing- , _gfavidmInputURIPrefix = Nothing- , _gfavidmCollectionIds = Nothing- , _gfavidmProgressDocuments = Nothing- , _gfavidmEndTime = Nothing- , _gfavidmOperationState = Nothing- }---- | The progress, in bytes, of this operation.-gfavidmProgressBytes :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavidmProgressBytes- = lens _gfavidmProgressBytes- (\ s a -> s{_gfavidmProgressBytes = a})---- | The time this operation started.-gfavidmStartTime :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe UTCTime)-gfavidmStartTime- = lens _gfavidmStartTime- (\ s a -> s{_gfavidmStartTime = a})- . mapping _DateTime---- | The location of the documents being imported.-gfavidmInputURIPrefix :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe Text)-gfavidmInputURIPrefix- = lens _gfavidmInputURIPrefix- (\ s a -> s{_gfavidmInputURIPrefix = a})---- | Which collection ids are being imported.-gfavidmCollectionIds :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata [Text]-gfavidmCollectionIds- = lens _gfavidmCollectionIds- (\ s a -> s{_gfavidmCollectionIds = a})- . _Default- . _Coerce---- | The progress, in documents, of this operation.-gfavidmProgressDocuments :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavidmProgressDocuments- = lens _gfavidmProgressDocuments- (\ s a -> s{_gfavidmProgressDocuments = a})---- | The time this operation completed. Will be unset if operation still in--- progress.-gfavidmEndTime :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe UTCTime)-gfavidmEndTime- = lens _gfavidmEndTime- (\ s a -> s{_gfavidmEndTime = a})- . mapping _DateTime---- | The state of the import operation.-gfavidmOperationState :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1ImportDocumentsMetadataOperationState)-gfavidmOperationState- = lens _gfavidmOperationState- (\ s a -> s{_gfavidmOperationState = a})--instance FromJSON- GoogleFirestoreAdminV1ImportDocumentsMetadata where- parseJSON- = withObject- "GoogleFirestoreAdminV1ImportDocumentsMetadata"- (\ o ->- GoogleFirestoreAdminV1ImportDocumentsMetadata' <$>- (o .:? "progressBytes") <*> (o .:? "startTime") <*>- (o .:? "inputUriPrefix")- <*> (o .:? "collectionIds" .!= mempty)- <*> (o .:? "progressDocuments")- <*> (o .:? "endTime")- <*> (o .:? "operationState"))--instance ToJSON- GoogleFirestoreAdminV1ImportDocumentsMetadata where- toJSON- GoogleFirestoreAdminV1ImportDocumentsMetadata'{..}- = object- (catMaybes- [("progressBytes" .=) <$> _gfavidmProgressBytes,- ("startTime" .=) <$> _gfavidmStartTime,- ("inputUriPrefix" .=) <$> _gfavidmInputURIPrefix,- ("collectionIds" .=) <$> _gfavidmCollectionIds,- ("progressDocuments" .=) <$>- _gfavidmProgressDocuments,- ("endTime" .=) <$> _gfavidmEndTime,- ("operationState" .=) <$> _gfavidmOperationState])---- | The request for Firestore.BeginTransaction.------ /See:/ 'beginTransactionRequest' smart constructor.-newtype BeginTransactionRequest = BeginTransactionRequest'- { _btrOptions :: Maybe TransactionOptions- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BeginTransactionRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'btrOptions'-beginTransactionRequest- :: BeginTransactionRequest-beginTransactionRequest =- BeginTransactionRequest'- { _btrOptions = Nothing- }---- | The options for the transaction. Defaults to a read-write transaction.-btrOptions :: Lens' BeginTransactionRequest (Maybe TransactionOptions)-btrOptions- = lens _btrOptions (\ s a -> s{_btrOptions = a})--instance FromJSON BeginTransactionRequest where- parseJSON- = withObject "BeginTransactionRequest"- (\ o ->- BeginTransactionRequest' <$> (o .:? "options"))--instance ToJSON BeginTransactionRequest where- toJSON BeginTransactionRequest'{..}- = object (catMaybes [("options" .=) <$> _btrOptions])---- | The request for Firestore.RunQuery.------ /See:/ 'runQueryRequest' smart constructor.-data RunQueryRequest = RunQueryRequest'- { _rqrReadTime :: !(Maybe DateTime')- , _rqrNewTransaction :: !(Maybe TransactionOptions)- , _rqrStructuredQuery :: !(Maybe StructuredQuery)- , _rqrTransaction :: !(Maybe Bytes)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RunQueryRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rqrReadTime'------ * 'rqrNewTransaction'------ * 'rqrStructuredQuery'------ * 'rqrTransaction'-runQueryRequest- :: RunQueryRequest-runQueryRequest =- RunQueryRequest'- { _rqrReadTime = Nothing- , _rqrNewTransaction = Nothing- , _rqrStructuredQuery = Nothing- , _rqrTransaction = Nothing- }---- | Reads documents as they were at the given time. This may not be older--- than 60 seconds.-rqrReadTime :: Lens' RunQueryRequest (Maybe UTCTime)-rqrReadTime- = lens _rqrReadTime (\ s a -> s{_rqrReadTime = a}) .- mapping _DateTime---- | Starts a new transaction and reads the documents. Defaults to a--- read-only transaction. The new transaction ID will be returned as the--- first response in the stream.-rqrNewTransaction :: Lens' RunQueryRequest (Maybe TransactionOptions)-rqrNewTransaction- = lens _rqrNewTransaction- (\ s a -> s{_rqrNewTransaction = a})---- | A structured query.-rqrStructuredQuery :: Lens' RunQueryRequest (Maybe StructuredQuery)-rqrStructuredQuery- = lens _rqrStructuredQuery- (\ s a -> s{_rqrStructuredQuery = a})---- | Reads documents in a transaction.-rqrTransaction :: Lens' RunQueryRequest (Maybe ByteString)-rqrTransaction- = lens _rqrTransaction- (\ s a -> s{_rqrTransaction = a})- . mapping _Bytes--instance FromJSON RunQueryRequest where- parseJSON- = withObject "RunQueryRequest"- (\ o ->- RunQueryRequest' <$>- (o .:? "readTime") <*> (o .:? "newTransaction") <*>- (o .:? "structuredQuery")- <*> (o .:? "transaction"))--instance ToJSON RunQueryRequest where- toJSON RunQueryRequest'{..}- = object- (catMaybes- [("readTime" .=) <$> _rqrReadTime,- ("newTransaction" .=) <$> _rqrNewTransaction,- ("structuredQuery" .=) <$> _rqrStructuredQuery,- ("transaction" .=) <$> _rqrTransaction])---- | Information about an index configuration change.------ /See:/ 'googleFirestoreAdminV1IndexConfigDelta' smart constructor.-data GoogleFirestoreAdminV1IndexConfigDelta = GoogleFirestoreAdminV1IndexConfigDelta'- { _gfavicdIndex :: !(Maybe GoogleFirestoreAdminV1Index)- , _gfavicdChangeType :: !(Maybe GoogleFirestoreAdminV1IndexConfigDeltaChangeType)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1IndexConfigDelta' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavicdIndex'------ * 'gfavicdChangeType'-googleFirestoreAdminV1IndexConfigDelta- :: GoogleFirestoreAdminV1IndexConfigDelta-googleFirestoreAdminV1IndexConfigDelta =- GoogleFirestoreAdminV1IndexConfigDelta'- { _gfavicdIndex = Nothing- , _gfavicdChangeType = Nothing- }---- | The index being changed.-gfavicdIndex :: Lens' GoogleFirestoreAdminV1IndexConfigDelta (Maybe GoogleFirestoreAdminV1Index)-gfavicdIndex- = lens _gfavicdIndex (\ s a -> s{_gfavicdIndex = a})---- | Specifies how the index is changing.-gfavicdChangeType :: Lens' GoogleFirestoreAdminV1IndexConfigDelta (Maybe GoogleFirestoreAdminV1IndexConfigDeltaChangeType)-gfavicdChangeType- = lens _gfavicdChangeType- (\ s a -> s{_gfavicdChangeType = a})--instance FromJSON- GoogleFirestoreAdminV1IndexConfigDelta where- parseJSON- = withObject "GoogleFirestoreAdminV1IndexConfigDelta"- (\ o ->- GoogleFirestoreAdminV1IndexConfigDelta' <$>- (o .:? "index") <*> (o .:? "changeType"))--instance ToJSON- GoogleFirestoreAdminV1IndexConfigDelta where- toJSON GoogleFirestoreAdminV1IndexConfigDelta'{..}- = object- (catMaybes- [("index" .=) <$> _gfavicdIndex,- ("changeType" .=) <$> _gfavicdChangeType])---- | The index configuration for this field.------ /See:/ 'googleFirestoreAdminV1IndexConfig' smart constructor.-data GoogleFirestoreAdminV1IndexConfig = GoogleFirestoreAdminV1IndexConfig'- { _gfavicAncestorField :: !(Maybe Text)- , _gfavicReverting :: !(Maybe Bool)- , _gfavicIndexes :: !(Maybe [GoogleFirestoreAdminV1Index])- , _gfavicUsesAncestorConfig :: !(Maybe Bool)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1IndexConfig' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavicAncestorField'------ * 'gfavicReverting'------ * 'gfavicIndexes'------ * 'gfavicUsesAncestorConfig'-googleFirestoreAdminV1IndexConfig- :: GoogleFirestoreAdminV1IndexConfig-googleFirestoreAdminV1IndexConfig =- GoogleFirestoreAdminV1IndexConfig'- { _gfavicAncestorField = Nothing- , _gfavicReverting = Nothing- , _gfavicIndexes = Nothing- , _gfavicUsesAncestorConfig = Nothing- }---- | Output only. Specifies the resource name of the \`Field\` from which--- this field\'s index configuration is set (when \`uses_ancestor_config\`--- is true), or from which it *would* be set if this field had no index--- configuration (when \`uses_ancestor_config\` is false).-gfavicAncestorField :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Text)-gfavicAncestorField- = lens _gfavicAncestorField- (\ s a -> s{_gfavicAncestorField = a})---- | Output only When true, the \`Field\`\'s index configuration is in the--- process of being reverted. Once complete, the index config will--- transition to the same state as the field specified by--- \`ancestor_field\`, at which point \`uses_ancestor_config\` will be--- \`true\` and \`reverting\` will be \`false\`.-gfavicReverting :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Bool)-gfavicReverting- = lens _gfavicReverting- (\ s a -> s{_gfavicReverting = a})---- | The indexes supported for this field.-gfavicIndexes :: Lens' GoogleFirestoreAdminV1IndexConfig [GoogleFirestoreAdminV1Index]-gfavicIndexes- = lens _gfavicIndexes- (\ s a -> s{_gfavicIndexes = a})- . _Default- . _Coerce---- | Output only. When true, the \`Field\`\'s index configuration is set from--- the configuration specified by the \`ancestor_field\`. When false, the--- \`Field\`\'s index configuration is defined explicitly.-gfavicUsesAncestorConfig :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Bool)-gfavicUsesAncestorConfig- = lens _gfavicUsesAncestorConfig- (\ s a -> s{_gfavicUsesAncestorConfig = a})--instance FromJSON GoogleFirestoreAdminV1IndexConfig- where- parseJSON- = withObject "GoogleFirestoreAdminV1IndexConfig"- (\ o ->- GoogleFirestoreAdminV1IndexConfig' <$>- (o .:? "ancestorField") <*> (o .:? "reverting") <*>- (o .:? "indexes" .!= mempty)- <*> (o .:? "usesAncestorConfig"))--instance ToJSON GoogleFirestoreAdminV1IndexConfig- where- toJSON GoogleFirestoreAdminV1IndexConfig'{..}- = object- (catMaybes- [("ancestorField" .=) <$> _gfavicAncestorField,- ("reverting" .=) <$> _gfavicReverting,- ("indexes" .=) <$> _gfavicIndexes,- ("usesAncestorConfig" .=) <$>- _gfavicUsesAncestorConfig])---- | A field in an index. The field_path describes which field is indexed,--- the value_mode describes how the field value is indexed.------ /See:/ 'googleFirestoreAdminV1IndexField' smart constructor.-data GoogleFirestoreAdminV1IndexField = GoogleFirestoreAdminV1IndexField'- { _gfavifFieldPath :: !(Maybe Text)- , _gfavifArrayConfig :: !(Maybe GoogleFirestoreAdminV1IndexFieldArrayConfig)- , _gfavifOrder :: !(Maybe GoogleFirestoreAdminV1IndexFieldOrder)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1IndexField' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavifFieldPath'------ * 'gfavifArrayConfig'------ * 'gfavifOrder'-googleFirestoreAdminV1IndexField- :: GoogleFirestoreAdminV1IndexField-googleFirestoreAdminV1IndexField =- GoogleFirestoreAdminV1IndexField'- { _gfavifFieldPath = Nothing- , _gfavifArrayConfig = Nothing- , _gfavifOrder = Nothing- }---- | Can be __name__. For single field indexes, this must match the name of--- the field or may be omitted.-gfavifFieldPath :: Lens' GoogleFirestoreAdminV1IndexField (Maybe Text)-gfavifFieldPath- = lens _gfavifFieldPath- (\ s a -> s{_gfavifFieldPath = a})---- | Indicates that this field supports operations on \`array_value\`s.-gfavifArrayConfig :: Lens' GoogleFirestoreAdminV1IndexField (Maybe GoogleFirestoreAdminV1IndexFieldArrayConfig)-gfavifArrayConfig- = lens _gfavifArrayConfig- (\ s a -> s{_gfavifArrayConfig = a})---- | Indicates that this field supports ordering by the specified order or--- comparing using =, \<, \<=, >, >=.-gfavifOrder :: Lens' GoogleFirestoreAdminV1IndexField (Maybe GoogleFirestoreAdminV1IndexFieldOrder)-gfavifOrder- = lens _gfavifOrder (\ s a -> s{_gfavifOrder = a})--instance FromJSON GoogleFirestoreAdminV1IndexField- where- parseJSON- = withObject "GoogleFirestoreAdminV1IndexField"- (\ o ->- GoogleFirestoreAdminV1IndexField' <$>- (o .:? "fieldPath") <*> (o .:? "arrayConfig") <*>- (o .:? "order"))--instance ToJSON GoogleFirestoreAdminV1IndexField- where- toJSON GoogleFirestoreAdminV1IndexField'{..}- = object- (catMaybes- [("fieldPath" .=) <$> _gfavifFieldPath,- ("arrayConfig" .=) <$> _gfavifArrayConfig,- ("order" .=) <$> _gfavifOrder])---- | A write on a document.------ /See:/ 'write' smart constructor.-data Write = Write'- { _wTransform :: !(Maybe DocumentTransform)- , _wUpdateMask :: !(Maybe DocumentMask)- , _wCurrentDocument :: !(Maybe Precondition)- , _wDelete :: !(Maybe Text)- , _wUpdate :: !(Maybe Document)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Write' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wTransform'------ * 'wUpdateMask'------ * 'wCurrentDocument'------ * 'wDelete'------ * 'wUpdate'-write- :: Write-write =- Write'- { _wTransform = Nothing- , _wUpdateMask = Nothing- , _wCurrentDocument = Nothing- , _wDelete = Nothing- , _wUpdate = Nothing- }---- | Applies a tranformation to a document. At most one \`transform\` per--- document is allowed in a given request. An \`update\` cannot follow a--- \`transform\` on the same document in a given request.-wTransform :: Lens' Write (Maybe DocumentTransform)-wTransform- = lens _wTransform (\ s a -> s{_wTransform = a})---- | The fields to update in this write. This field can be set only when the--- operation is \`update\`. If the mask is not set for an \`update\` and--- the document exists, any existing data will be overwritten. If the mask--- is set and the document on the server has fields not covered by the--- mask, they are left unchanged. Fields referenced in the mask, but not--- present in the input document, are deleted from the document on the--- server. The field paths in this mask must not contain a reserved field--- name.-wUpdateMask :: Lens' Write (Maybe DocumentMask)-wUpdateMask- = lens _wUpdateMask (\ s a -> s{_wUpdateMask = a})---- | An optional precondition on the document. The write will fail if this is--- set and not met by the target document.-wCurrentDocument :: Lens' Write (Maybe Precondition)-wCurrentDocument- = lens _wCurrentDocument- (\ s a -> s{_wCurrentDocument = a})---- | A document name to delete. In the format:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.-wDelete :: Lens' Write (Maybe Text)-wDelete = lens _wDelete (\ s a -> s{_wDelete = a})---- | A document to write.-wUpdate :: Lens' Write (Maybe Document)-wUpdate = lens _wUpdate (\ s a -> s{_wUpdate = a})--instance FromJSON Write where- parseJSON- = withObject "Write"- (\ o ->- Write' <$>- (o .:? "transform") <*> (o .:? "updateMask") <*>- (o .:? "currentDocument")- <*> (o .:? "delete")- <*> (o .:? "update"))--instance ToJSON Write where- toJSON Write'{..}- = object- (catMaybes- [("transform" .=) <$> _wTransform,- ("updateMask" .=) <$> _wUpdateMask,- ("currentDocument" .=) <$> _wCurrentDocument,- ("delete" .=) <$> _wDelete,- ("update" .=) <$> _wUpdate])---- | A resource that represents Google Cloud Platform location.------ /See:/ 'location' smart constructor.-data Location = Location'- { _lName :: !(Maybe Text)- , _lMetadata :: !(Maybe LocationMetadata)- , _lDisplayName :: !(Maybe Text)- , _lLabels :: !(Maybe LocationLabels)- , _lLocationId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Location' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lName'------ * 'lMetadata'------ * 'lDisplayName'------ * 'lLabels'------ * 'lLocationId'-location- :: Location-location =- Location'- { _lName = Nothing- , _lMetadata = Nothing- , _lDisplayName = Nothing- , _lLabels = Nothing- , _lLocationId = Nothing- }---- | Resource name for the location, which may vary between implementations.--- For example: \`\"projects\/example-project\/locations\/us-east1\"\`-lName :: Lens' Location (Maybe Text)-lName = lens _lName (\ s a -> s{_lName = a})---- | Service-specific metadata. For example the available capacity at the--- given location.-lMetadata :: Lens' Location (Maybe LocationMetadata)-lMetadata- = lens _lMetadata (\ s a -> s{_lMetadata = a})---- | The friendly name for this location, typically a nearby city name. For--- example, \"Tokyo\".-lDisplayName :: Lens' Location (Maybe Text)-lDisplayName- = lens _lDisplayName (\ s a -> s{_lDisplayName = a})---- | Cross-service attributes for the location. For example--- {\"cloud.googleapis.com\/region\": \"us-east1\"}-lLabels :: Lens' Location (Maybe LocationLabels)-lLabels = lens _lLabels (\ s a -> s{_lLabels = a})---- | The canonical id for this location. For example: \`\"us-east1\"\`.-lLocationId :: Lens' Location (Maybe Text)-lLocationId- = lens _lLocationId (\ s a -> s{_lLocationId = a})--instance FromJSON Location where- parseJSON- = withObject "Location"- (\ o ->- Location' <$>- (o .:? "name") <*> (o .:? "metadata") <*>- (o .:? "displayName")- <*> (o .:? "labels")- <*> (o .:? "locationId"))--instance ToJSON Location where- toJSON Location'{..}- = object- (catMaybes- [("name" .=) <$> _lName,- ("metadata" .=) <$> _lMetadata,- ("displayName" .=) <$> _lDisplayName,- ("labels" .=) <$> _lLabels,- ("locationId" .=) <$> _lLocationId])---- | A generic empty message that you can re-use to avoid defining duplicated--- empty messages in your APIs. A typical example is to use it as the--- request or the response type of an API method. For instance: service Foo--- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The--- JSON representation for \`Empty\` is empty JSON object \`{}\`.------ /See:/ 'empty' smart constructor.-data Empty =- Empty'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Empty' with the minimum fields required to make a request.----empty- :: Empty-empty = Empty'--instance FromJSON Empty where- parseJSON = withObject "Empty" (\ o -> pure Empty')--instance ToJSON Empty where- toJSON = const emptyObject---- | The streamed response for Firestore.BatchGetDocuments.------ /See:/ 'batchGetDocumentsResponse' smart constructor.-data BatchGetDocumentsResponse = BatchGetDocumentsResponse'- { _bgdrReadTime :: !(Maybe DateTime')- , _bgdrFound :: !(Maybe Document)- , _bgdrTransaction :: !(Maybe Bytes)- , _bgdrMissing :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BatchGetDocumentsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bgdrReadTime'------ * 'bgdrFound'------ * 'bgdrTransaction'------ * 'bgdrMissing'-batchGetDocumentsResponse- :: BatchGetDocumentsResponse-batchGetDocumentsResponse =- BatchGetDocumentsResponse'- { _bgdrReadTime = Nothing- , _bgdrFound = Nothing- , _bgdrTransaction = Nothing- , _bgdrMissing = Nothing- }---- | The time at which the document was read. This may be monotically--- increasing, in this case the previous documents in the result stream are--- guaranteed not to have changed between their read_time and this one.-bgdrReadTime :: Lens' BatchGetDocumentsResponse (Maybe UTCTime)-bgdrReadTime- = lens _bgdrReadTime (\ s a -> s{_bgdrReadTime = a})- . mapping _DateTime---- | A document that was requested.-bgdrFound :: Lens' BatchGetDocumentsResponse (Maybe Document)-bgdrFound- = lens _bgdrFound (\ s a -> s{_bgdrFound = a})---- | The transaction that was started as part of this request. Will only be--- set in the first response, and only if--- BatchGetDocumentsRequest.new_transaction was set in the request.-bgdrTransaction :: Lens' BatchGetDocumentsResponse (Maybe ByteString)-bgdrTransaction- = lens _bgdrTransaction- (\ s a -> s{_bgdrTransaction = a})- . mapping _Bytes---- | A document name that was requested but does not exist. In the format:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.-bgdrMissing :: Lens' BatchGetDocumentsResponse (Maybe Text)-bgdrMissing- = lens _bgdrMissing (\ s a -> s{_bgdrMissing = a})--instance FromJSON BatchGetDocumentsResponse where- parseJSON- = withObject "BatchGetDocumentsResponse"- (\ o ->- BatchGetDocumentsResponse' <$>- (o .:? "readTime") <*> (o .:? "found") <*>- (o .:? "transaction")- <*> (o .:? "missing"))--instance ToJSON BatchGetDocumentsResponse where- toJSON BatchGetDocumentsResponse'{..}- = object- (catMaybes- [("readTime" .=) <$> _bgdrReadTime,- ("found" .=) <$> _bgdrFound,- ("transaction" .=) <$> _bgdrTransaction,- ("missing" .=) <$> _bgdrMissing])---- | A filter that merges multiple other filters using the given operator.------ /See:/ 'compositeFilter' smart constructor.-data CompositeFilter = CompositeFilter'- { _cfOp :: !(Maybe CompositeFilterOp)- , _cfFilters :: !(Maybe [Filter])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CompositeFilter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cfOp'------ * 'cfFilters'-compositeFilter- :: CompositeFilter-compositeFilter =- CompositeFilter'- { _cfOp = Nothing- , _cfFilters = Nothing- }---- | The operator for combining multiple filters.-cfOp :: Lens' CompositeFilter (Maybe CompositeFilterOp)-cfOp = lens _cfOp (\ s a -> s{_cfOp = a})---- | The list of filters to combine. Must contain at least one filter.-cfFilters :: Lens' CompositeFilter [Filter]-cfFilters- = lens _cfFilters (\ s a -> s{_cfFilters = a}) .- _Default- . _Coerce--instance FromJSON CompositeFilter where- parseJSON- = withObject "CompositeFilter"- (\ o ->- CompositeFilter' <$>- (o .:? "op") <*> (o .:? "filters" .!= mempty))--instance ToJSON CompositeFilter where- toJSON CompositeFilter'{..}- = object- (catMaybes- [("op" .=) <$> _cfOp, ("filters" .=) <$> _cfFilters])---- | A target specified by a set of documents names.------ /See:/ 'documentsTarget' smart constructor.-newtype DocumentsTarget = DocumentsTarget'- { _dtDocuments :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentsTarget' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dtDocuments'-documentsTarget- :: DocumentsTarget-documentsTarget =- DocumentsTarget'- { _dtDocuments = Nothing- }---- | The names of the documents to retrieve. In the format:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.--- The request will fail if any of the document is not a child resource of--- the given \`database\`. Duplicate names will be elided.-dtDocuments :: Lens' DocumentsTarget [Text]-dtDocuments- = lens _dtDocuments (\ s a -> s{_dtDocuments = a}) .- _Default- . _Coerce--instance FromJSON DocumentsTarget where- parseJSON- = withObject "DocumentsTarget"- (\ o ->- DocumentsTarget' <$> (o .:? "documents" .!= mempty))--instance ToJSON DocumentsTarget where- toJSON DocumentsTarget'{..}- = object- (catMaybes [("documents" .=) <$> _dtDocuments])---- | Labels associated with this target change.------ /See:/ 'listenRequestLabels' smart constructor.-newtype ListenRequestLabels = ListenRequestLabels'- { _lrlAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListenRequestLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrlAddtional'-listenRequestLabels- :: HashMap Text Text -- ^ 'lrlAddtional'- -> ListenRequestLabels-listenRequestLabels pLrlAddtional_ =- ListenRequestLabels'- { _lrlAddtional = _Coerce # pLrlAddtional_- }--lrlAddtional :: Lens' ListenRequestLabels (HashMap Text Text)-lrlAddtional- = lens _lrlAddtional (\ s a -> s{_lrlAddtional = a})- . _Coerce--instance FromJSON ListenRequestLabels where- parseJSON- = withObject "ListenRequestLabels"- (\ o -> ListenRequestLabels' <$> (parseJSONObject o))--instance ToJSON ListenRequestLabels where- toJSON = toJSON . _lrlAddtional---- | Cloud Firestore indexes enable simple and complex queries against--- documents in a database.------ /See:/ 'googleFirestoreAdminV1Index' smart constructor.-data GoogleFirestoreAdminV1Index = GoogleFirestoreAdminV1Index'- { _gfaviState :: !(Maybe GoogleFirestoreAdminV1IndexState)- , _gfaviQueryScope :: !(Maybe GoogleFirestoreAdminV1IndexQueryScope)- , _gfaviName :: !(Maybe Text)- , _gfaviFields :: !(Maybe [GoogleFirestoreAdminV1IndexField])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1Index' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfaviState'------ * 'gfaviQueryScope'------ * 'gfaviName'------ * 'gfaviFields'-googleFirestoreAdminV1Index- :: GoogleFirestoreAdminV1Index-googleFirestoreAdminV1Index =- GoogleFirestoreAdminV1Index'- { _gfaviState = Nothing- , _gfaviQueryScope = Nothing- , _gfaviName = Nothing- , _gfaviFields = Nothing- }---- | Output only. The serving state of the index.-gfaviState :: Lens' GoogleFirestoreAdminV1Index (Maybe GoogleFirestoreAdminV1IndexState)-gfaviState- = lens _gfaviState (\ s a -> s{_gfaviState = a})---- | Indexes with a collection query scope specified allow queries against a--- collection that is the child of a specific document, specified at query--- time, and that has the same collection id. Indexes with a collection--- group query scope specified allow queries against all collections--- descended from a specific document, specified at query time, and that--- have the same collection id as this index.-gfaviQueryScope :: Lens' GoogleFirestoreAdminV1Index (Maybe GoogleFirestoreAdminV1IndexQueryScope)-gfaviQueryScope- = lens _gfaviQueryScope- (\ s a -> s{_gfaviQueryScope = a})---- | Output only. A server defined name for this index. The form of this name--- for composite indexes will be:--- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/indexes\/{composite_index_id}\`--- For single field indexes, this field will be empty.-gfaviName :: Lens' GoogleFirestoreAdminV1Index (Maybe Text)-gfaviName- = lens _gfaviName (\ s a -> s{_gfaviName = a})---- | The fields supported by this index. For composite indexes, this is--- always 2 or more fields. The last field entry is always for the field--- path \`__name__\`. If, on creation, \`__name__\` was not specified as--- the last field, it will be added automatically with the same direction--- as that of the last field defined. If the final field in a composite--- index is not directional, the \`__name__\` will be ordered ASCENDING--- (unless explicitly specified). For single field indexes, this will--- always be exactly one entry with a field path equal to the field path of--- the associated field.-gfaviFields :: Lens' GoogleFirestoreAdminV1Index [GoogleFirestoreAdminV1IndexField]-gfaviFields- = lens _gfaviFields (\ s a -> s{_gfaviFields = a}) .- _Default- . _Coerce--instance FromJSON GoogleFirestoreAdminV1Index where- parseJSON- = withObject "GoogleFirestoreAdminV1Index"- (\ o ->- GoogleFirestoreAdminV1Index' <$>- (o .:? "state") <*> (o .:? "queryScope") <*>- (o .:? "name")- <*> (o .:? "fields" .!= mempty))--instance ToJSON GoogleFirestoreAdminV1Index where- toJSON GoogleFirestoreAdminV1Index'{..}- = object- (catMaybes- [("state" .=) <$> _gfaviState,- ("queryScope" .=) <$> _gfaviQueryScope,- ("name" .=) <$> _gfaviName,- ("fields" .=) <$> _gfaviFields])---- | The response for Firestore.BeginTransaction.------ /See:/ 'beginTransactionResponse' smart constructor.-newtype BeginTransactionResponse = BeginTransactionResponse'- { _btrTransaction :: Maybe Bytes- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BeginTransactionResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'btrTransaction'-beginTransactionResponse- :: BeginTransactionResponse-beginTransactionResponse =- BeginTransactionResponse'- { _btrTransaction = Nothing- }---- | The transaction that was started.-btrTransaction :: Lens' BeginTransactionResponse (Maybe ByteString)-btrTransaction- = lens _btrTransaction- (\ s a -> s{_btrTransaction = a})- . mapping _Bytes--instance FromJSON BeginTransactionResponse where- parseJSON- = withObject "BeginTransactionResponse"- (\ o ->- BeginTransactionResponse' <$> (o .:? "transaction"))--instance ToJSON BeginTransactionResponse where- toJSON BeginTransactionResponse'{..}- = object- (catMaybes [("transaction" .=) <$> _btrTransaction])---- | The response for Firestore.RunQuery.------ /See:/ 'runQueryResponse' smart constructor.-data RunQueryResponse = RunQueryResponse'- { _rReadTime :: !(Maybe DateTime')- , _rSkippedResults :: !(Maybe (Textual Int32))- , _rTransaction :: !(Maybe Bytes)- , _rDocument :: !(Maybe Document)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'RunQueryResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rReadTime'------ * 'rSkippedResults'------ * 'rTransaction'------ * 'rDocument'-runQueryResponse- :: RunQueryResponse-runQueryResponse =- RunQueryResponse'- { _rReadTime = Nothing- , _rSkippedResults = Nothing- , _rTransaction = Nothing- , _rDocument = Nothing- }---- | The time at which the document was read. This may be monotonically--- increasing; in this case, the previous documents in the result stream--- are guaranteed not to have changed between their \`read_time\` and this--- one. If the query returns no results, a response with \`read_time\` and--- no \`document\` will be sent, and this represents the time at which the--- query was run.-rReadTime :: Lens' RunQueryResponse (Maybe UTCTime)-rReadTime- = lens _rReadTime (\ s a -> s{_rReadTime = a}) .- mapping _DateTime---- | The number of results that have been skipped due to an offset between--- the last response and the current response.-rSkippedResults :: Lens' RunQueryResponse (Maybe Int32)-rSkippedResults- = lens _rSkippedResults- (\ s a -> s{_rSkippedResults = a})- . mapping _Coerce---- | The transaction that was started as part of this request. Can only be--- set in the first response, and only if RunQueryRequest.new_transaction--- was set in the request. If set, no other fields will be set in this--- response.-rTransaction :: Lens' RunQueryResponse (Maybe ByteString)-rTransaction- = lens _rTransaction (\ s a -> s{_rTransaction = a})- . mapping _Bytes---- | A query result. Not set when reporting partial progress.-rDocument :: Lens' RunQueryResponse (Maybe Document)-rDocument- = lens _rDocument (\ s a -> s{_rDocument = a})--instance FromJSON RunQueryResponse where- parseJSON- = withObject "RunQueryResponse"- (\ o ->- RunQueryResponse' <$>- (o .:? "readTime") <*> (o .:? "skippedResults") <*>- (o .:? "transaction")- <*> (o .:? "document"))--instance ToJSON RunQueryResponse where- toJSON RunQueryResponse'{..}- = object- (catMaybes- [("readTime" .=) <$> _rReadTime,- ("skippedResults" .=) <$> _rSkippedResults,- ("transaction" .=) <$> _rTransaction,- ("document" .=) <$> _rDocument])---- | Metadata for google.longrunning.Operation results from--- FirestoreAdmin.ExportDocuments.------ /See:/ 'googleFirestoreAdminV1ExportDocumentsMetadata' smart constructor.-data GoogleFirestoreAdminV1ExportDocumentsMetadata = GoogleFirestoreAdminV1ExportDocumentsMetadata'- { _gfavedmProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavedmStartTime :: !(Maybe DateTime')- , _gfavedmCollectionIds :: !(Maybe [Text])- , _gfavedmProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavedmEndTime :: !(Maybe DateTime')- , _gfavedmOperationState :: !(Maybe GoogleFirestoreAdminV1ExportDocumentsMetadataOperationState)- , _gfavedmOutputURIPrefix :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavedmProgressBytes'------ * 'gfavedmStartTime'------ * 'gfavedmCollectionIds'------ * 'gfavedmProgressDocuments'------ * 'gfavedmEndTime'------ * 'gfavedmOperationState'------ * 'gfavedmOutputURIPrefix'-googleFirestoreAdminV1ExportDocumentsMetadata- :: GoogleFirestoreAdminV1ExportDocumentsMetadata-googleFirestoreAdminV1ExportDocumentsMetadata =- GoogleFirestoreAdminV1ExportDocumentsMetadata'- { _gfavedmProgressBytes = Nothing- , _gfavedmStartTime = Nothing- , _gfavedmCollectionIds = Nothing- , _gfavedmProgressDocuments = Nothing- , _gfavedmEndTime = Nothing- , _gfavedmOperationState = Nothing- , _gfavedmOutputURIPrefix = Nothing- }---- | The progress, in bytes, of this operation.-gfavedmProgressBytes :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavedmProgressBytes- = lens _gfavedmProgressBytes- (\ s a -> s{_gfavedmProgressBytes = a})---- | The time this operation started.-gfavedmStartTime :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe UTCTime)-gfavedmStartTime- = lens _gfavedmStartTime- (\ s a -> s{_gfavedmStartTime = a})- . mapping _DateTime---- | Which collection ids are being exported.-gfavedmCollectionIds :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata [Text]-gfavedmCollectionIds- = lens _gfavedmCollectionIds- (\ s a -> s{_gfavedmCollectionIds = a})- . _Default- . _Coerce---- | The progress, in documents, of this operation.-gfavedmProgressDocuments :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavedmProgressDocuments- = lens _gfavedmProgressDocuments- (\ s a -> s{_gfavedmProgressDocuments = a})---- | The time this operation completed. Will be unset if operation still in--- progress.-gfavedmEndTime :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe UTCTime)-gfavedmEndTime- = lens _gfavedmEndTime- (\ s a -> s{_gfavedmEndTime = a})- . mapping _DateTime---- | The state of the export operation.-gfavedmOperationState :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1ExportDocumentsMetadataOperationState)-gfavedmOperationState- = lens _gfavedmOperationState- (\ s a -> s{_gfavedmOperationState = a})---- | Where the entities are being exported to.-gfavedmOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe Text)-gfavedmOutputURIPrefix- = lens _gfavedmOutputURIPrefix- (\ s a -> s{_gfavedmOutputURIPrefix = a})--instance FromJSON- GoogleFirestoreAdminV1ExportDocumentsMetadata where- parseJSON- = withObject- "GoogleFirestoreAdminV1ExportDocumentsMetadata"- (\ o ->- GoogleFirestoreAdminV1ExportDocumentsMetadata' <$>- (o .:? "progressBytes") <*> (o .:? "startTime") <*>- (o .:? "collectionIds" .!= mempty)- <*> (o .:? "progressDocuments")- <*> (o .:? "endTime")- <*> (o .:? "operationState")- <*> (o .:? "outputUriPrefix"))--instance ToJSON- GoogleFirestoreAdminV1ExportDocumentsMetadata where- toJSON- GoogleFirestoreAdminV1ExportDocumentsMetadata'{..}- = object- (catMaybes- [("progressBytes" .=) <$> _gfavedmProgressBytes,- ("startTime" .=) <$> _gfavedmStartTime,- ("collectionIds" .=) <$> _gfavedmCollectionIds,- ("progressDocuments" .=) <$>- _gfavedmProgressDocuments,- ("endTime" .=) <$> _gfavedmEndTime,- ("operationState" .=) <$> _gfavedmOperationState,- ("outputUriPrefix" .=) <$> _gfavedmOutputURIPrefix])---- | Describes the progress of the operation. Unit of work is generic and--- must be interpreted based on where Progress is used.------ /See:/ 'googleFirestoreAdminV1Progress' smart constructor.-data GoogleFirestoreAdminV1Progress = GoogleFirestoreAdminV1Progress'- { _gfavpCompletedWork :: !(Maybe (Textual Int64))- , _gfavpEstimatedWork :: !(Maybe (Textual Int64))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1Progress' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavpCompletedWork'------ * 'gfavpEstimatedWork'-googleFirestoreAdminV1Progress- :: GoogleFirestoreAdminV1Progress-googleFirestoreAdminV1Progress =- GoogleFirestoreAdminV1Progress'- { _gfavpCompletedWork = Nothing- , _gfavpEstimatedWork = Nothing- }---- | The amount of work completed.-gfavpCompletedWork :: Lens' GoogleFirestoreAdminV1Progress (Maybe Int64)-gfavpCompletedWork- = lens _gfavpCompletedWork- (\ s a -> s{_gfavpCompletedWork = a})- . mapping _Coerce---- | The amount of work estimated.-gfavpEstimatedWork :: Lens' GoogleFirestoreAdminV1Progress (Maybe Int64)-gfavpEstimatedWork- = lens _gfavpEstimatedWork- (\ s a -> s{_gfavpEstimatedWork = a})- . mapping _Coerce--instance FromJSON GoogleFirestoreAdminV1Progress- where- parseJSON- = withObject "GoogleFirestoreAdminV1Progress"- (\ o ->- GoogleFirestoreAdminV1Progress' <$>- (o .:? "completedWork") <*> (o .:? "estimatedWork"))--instance ToJSON GoogleFirestoreAdminV1Progress where- toJSON GoogleFirestoreAdminV1Progress'{..}- = object- (catMaybes- [("completedWork" .=) <$> _gfavpCompletedWork,- ("estimatedWork" .=) <$> _gfavpEstimatedWork])---- | A set of field paths on a document. Used to restrict a get or update--- operation on a document to a subset of its fields. This is different--- from standard field masks, as this is always scoped to a Document, and--- takes in account the dynamic nature of Value.------ /See:/ 'documentMask' smart constructor.-newtype DocumentMask = DocumentMask'- { _dmFieldPaths :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentMask' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dmFieldPaths'-documentMask- :: DocumentMask-documentMask =- DocumentMask'- { _dmFieldPaths = Nothing- }---- | The list of field paths in the mask. See Document.fields for a field--- path syntax reference.-dmFieldPaths :: Lens' DocumentMask [Text]-dmFieldPaths- = lens _dmFieldPaths (\ s a -> s{_dmFieldPaths = a})- . _Default- . _Coerce--instance FromJSON DocumentMask where- parseJSON- = withObject "DocumentMask"- (\ o ->- DocumentMask' <$> (o .:? "fieldPaths" .!= mempty))--instance ToJSON DocumentMask where- toJSON DocumentMask'{..}- = object- (catMaybes [("fieldPaths" .=) <$> _dmFieldPaths])---- | A target specified by a query.------ /See:/ 'queryTarget' smart constructor.-data QueryTarget = QueryTarget'- { _qtParent :: !(Maybe Text)- , _qtStructuredQuery :: !(Maybe StructuredQuery)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'QueryTarget' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'qtParent'------ * 'qtStructuredQuery'-queryTarget- :: QueryTarget-queryTarget =- QueryTarget'- { _qtParent = Nothing- , _qtStructuredQuery = Nothing- }---- | The parent resource name. In the format:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\` or--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.--- For example: \`projects\/my-project\/databases\/my-database\/documents\`--- or--- \`projects\/my-project\/databases\/my-database\/documents\/chatrooms\/my-chatroom\`-qtParent :: Lens' QueryTarget (Maybe Text)-qtParent = lens _qtParent (\ s a -> s{_qtParent = a})---- | A structured query.-qtStructuredQuery :: Lens' QueryTarget (Maybe StructuredQuery)-qtStructuredQuery- = lens _qtStructuredQuery- (\ s a -> s{_qtStructuredQuery = a})--instance FromJSON QueryTarget where- parseJSON- = withObject "QueryTarget"- (\ o ->- QueryTarget' <$>- (o .:? "parent") <*> (o .:? "structuredQuery"))--instance ToJSON QueryTarget where- toJSON QueryTarget'{..}- = object- (catMaybes- [("parent" .=) <$> _qtParent,- ("structuredQuery" .=) <$> _qtStructuredQuery])---- | A message that can hold any of the supported value types.------ /See:/ 'value' smart constructor.-data Value = Value'- { _vGeoPointValue :: !(Maybe LatLng)- , _vBytesValue :: !(Maybe Bytes)- , _vIntegerValue :: !(Maybe (Textual Int64))- , _vTimestampValue :: !(Maybe DateTime')- , _vDoubleValue :: !(Maybe (Textual Double))- , _vStringValue :: !(Maybe Text)- , _vBooleanValue :: !(Maybe Bool)- , _vMapValue :: !(Maybe MapValue)- , _vArrayValue :: !(Maybe ArrayValue)- , _vReferenceValue :: !(Maybe Text)- , _vNullValue :: !(Maybe ValueNullValue)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Value' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'vGeoPointValue'------ * 'vBytesValue'------ * 'vIntegerValue'------ * 'vTimestampValue'------ * 'vDoubleValue'------ * 'vStringValue'------ * 'vBooleanValue'------ * 'vMapValue'------ * 'vArrayValue'------ * 'vReferenceValue'------ * 'vNullValue'-value- :: Value-value =- Value'- { _vGeoPointValue = Nothing- , _vBytesValue = Nothing- , _vIntegerValue = Nothing- , _vTimestampValue = Nothing- , _vDoubleValue = Nothing- , _vStringValue = Nothing- , _vBooleanValue = Nothing- , _vMapValue = Nothing- , _vArrayValue = Nothing- , _vReferenceValue = Nothing- , _vNullValue = Nothing- }---- | A geo point value representing a point on the surface of Earth.-vGeoPointValue :: Lens' Value (Maybe LatLng)-vGeoPointValue- = lens _vGeoPointValue- (\ s a -> s{_vGeoPointValue = a})---- | A bytes value. Must not exceed 1 MiB - 89 bytes. Only the first 1,500--- bytes are considered by queries.-vBytesValue :: Lens' Value (Maybe ByteString)-vBytesValue- = lens _vBytesValue (\ s a -> s{_vBytesValue = a}) .- mapping _Bytes---- | An integer value.-vIntegerValue :: Lens' Value (Maybe Int64)-vIntegerValue- = lens _vIntegerValue- (\ s a -> s{_vIntegerValue = a})- . mapping _Coerce---- | A timestamp value. Precise only to microseconds. When stored, any--- additional precision is rounded down.-vTimestampValue :: Lens' Value (Maybe UTCTime)-vTimestampValue- = lens _vTimestampValue- (\ s a -> s{_vTimestampValue = a})- . mapping _DateTime---- | A double value.-vDoubleValue :: Lens' Value (Maybe Double)-vDoubleValue- = lens _vDoubleValue (\ s a -> s{_vDoubleValue = a})- . mapping _Coerce---- | A string value. The string, represented as UTF-8, must not exceed 1 MiB--- - 89 bytes. Only the first 1,500 bytes of the UTF-8 representation are--- considered by queries.-vStringValue :: Lens' Value (Maybe Text)-vStringValue- = lens _vStringValue (\ s a -> s{_vStringValue = a})---- | A boolean value.-vBooleanValue :: Lens' Value (Maybe Bool)-vBooleanValue- = lens _vBooleanValue- (\ s a -> s{_vBooleanValue = a})---- | A map value.-vMapValue :: Lens' Value (Maybe MapValue)-vMapValue- = lens _vMapValue (\ s a -> s{_vMapValue = a})---- | An array value. Cannot directly contain another array value, though can--- contain an map which contains another array.-vArrayValue :: Lens' Value (Maybe ArrayValue)-vArrayValue- = lens _vArrayValue (\ s a -> s{_vArrayValue = a})---- | A reference to a document. For example:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.-vReferenceValue :: Lens' Value (Maybe Text)-vReferenceValue- = lens _vReferenceValue- (\ s a -> s{_vReferenceValue = a})---- | A null value.-vNullValue :: Lens' Value (Maybe ValueNullValue)-vNullValue- = lens _vNullValue (\ s a -> s{_vNullValue = a})--instance FromJSON Value where- parseJSON- = withObject "Value"- (\ o ->- Value' <$>- (o .:? "geoPointValue") <*> (o .:? "bytesValue") <*>- (o .:? "integerValue")- <*> (o .:? "timestampValue")- <*> (o .:? "doubleValue")- <*> (o .:? "stringValue")- <*> (o .:? "booleanValue")- <*> (o .:? "mapValue")- <*> (o .:? "arrayValue")- <*> (o .:? "referenceValue")- <*> (o .:? "nullValue"))--instance ToJSON Value where- toJSON Value'{..}- = object- (catMaybes- [("geoPointValue" .=) <$> _vGeoPointValue,- ("bytesValue" .=) <$> _vBytesValue,- ("integerValue" .=) <$> _vIntegerValue,- ("timestampValue" .=) <$> _vTimestampValue,- ("doubleValue" .=) <$> _vDoubleValue,- ("stringValue" .=) <$> _vStringValue,- ("booleanValue" .=) <$> _vBooleanValue,- ("mapValue" .=) <$> _vMapValue,- ("arrayValue" .=) <$> _vArrayValue,- ("referenceValue" .=) <$> _vReferenceValue,- ("nullValue" .=) <$> _vNullValue])------- /See:/ 'statusDetailsItem' smart constructor.-newtype StatusDetailsItem = StatusDetailsItem'- { _sdiAddtional :: HashMap Text JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'StatusDetailsItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sdiAddtional'-statusDetailsItem- :: HashMap Text JSONValue -- ^ 'sdiAddtional'- -> StatusDetailsItem-statusDetailsItem pSdiAddtional_ =- StatusDetailsItem'- { _sdiAddtional = _Coerce # pSdiAddtional_- }---- | Properties of the object. Contains field \'type with type URL.-sdiAddtional :: Lens' StatusDetailsItem (HashMap Text JSONValue)-sdiAddtional- = lens _sdiAddtional (\ s a -> s{_sdiAddtional = a})- . _Coerce--instance FromJSON StatusDetailsItem where- parseJSON- = withObject "StatusDetailsItem"- (\ o -> StatusDetailsItem' <$> (parseJSONObject o))--instance ToJSON StatusDetailsItem where- toJSON = toJSON . _sdiAddtional---- | A transformation of a document.------ /See:/ 'documentTransform' smart constructor.-data DocumentTransform = DocumentTransform'- { _dtDocument :: !(Maybe Text)- , _dtFieldTransforms :: !(Maybe [FieldTransform])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentTransform' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dtDocument'------ * 'dtFieldTransforms'-documentTransform- :: DocumentTransform-documentTransform =- DocumentTransform'- { _dtDocument = Nothing- , _dtFieldTransforms = Nothing- }---- | The name of the document to transform.-dtDocument :: Lens' DocumentTransform (Maybe Text)-dtDocument- = lens _dtDocument (\ s a -> s{_dtDocument = a})---- | The list of transformations to apply to the fields of the document, in--- order. This must not be empty.-dtFieldTransforms :: Lens' DocumentTransform [FieldTransform]-dtFieldTransforms- = lens _dtFieldTransforms- (\ s a -> s{_dtFieldTransforms = a})- . _Default- . _Coerce--instance FromJSON DocumentTransform where- parseJSON- = withObject "DocumentTransform"- (\ o ->- DocumentTransform' <$>- (o .:? "document") <*>- (o .:? "fieldTransforms" .!= mempty))--instance ToJSON DocumentTransform where- toJSON DocumentTransform'{..}- = object- (catMaybes- [("document" .=) <$> _dtDocument,- ("fieldTransforms" .=) <$> _dtFieldTransforms])---- | A Firestore query.------ /See:/ 'structuredQuery' smart constructor.-data StructuredQuery = StructuredQuery'- { _sqWhere :: !(Maybe Filter)- , _sqOrderBy :: !(Maybe [Order])- , _sqStartAt :: !(Maybe Cursor)- , _sqOffSet :: !(Maybe (Textual Int32))- , _sqFrom :: !(Maybe [CollectionSelector])- , _sqEndAt :: !(Maybe Cursor)- , _sqLimit :: !(Maybe (Textual Int32))- , _sqSelect :: !(Maybe Projection)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'StructuredQuery' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sqWhere'------ * 'sqOrderBy'------ * 'sqStartAt'------ * 'sqOffSet'------ * 'sqFrom'------ * 'sqEndAt'------ * 'sqLimit'------ * 'sqSelect'-structuredQuery- :: StructuredQuery-structuredQuery =- StructuredQuery'- { _sqWhere = Nothing- , _sqOrderBy = Nothing- , _sqStartAt = Nothing- , _sqOffSet = Nothing- , _sqFrom = Nothing- , _sqEndAt = Nothing- , _sqLimit = Nothing- , _sqSelect = Nothing- }---- | The filter to apply.-sqWhere :: Lens' StructuredQuery (Maybe Filter)-sqWhere = lens _sqWhere (\ s a -> s{_sqWhere = a})---- | The order to apply to the query results. Firestore guarantees a stable--- ordering through the following rules: * Any field required to appear in--- \`order_by\`, that is not already specified in \`order_by\`, is appended--- to the order in field name order by default. * If an order on--- \`__name__\` is not specified, it is appended by default. Fields are--- appended with the same sort direction as the last order specified, or--- \'ASCENDING\' if no order was specified. For example: * \`SELECT * FROM--- Foo ORDER BY A\` becomes \`SELECT * FROM Foo ORDER BY A, __name__\` *--- \`SELECT * FROM Foo ORDER BY A DESC\` becomes \`SELECT * FROM Foo ORDER--- BY A DESC, __name__ DESC\` * \`SELECT * FROM Foo WHERE A > 1\` becomes--- \`SELECT * FROM Foo WHERE A > 1 ORDER BY A, __name__\`-sqOrderBy :: Lens' StructuredQuery [Order]-sqOrderBy- = lens _sqOrderBy (\ s a -> s{_sqOrderBy = a}) .- _Default- . _Coerce---- | A starting point for the query results.-sqStartAt :: Lens' StructuredQuery (Maybe Cursor)-sqStartAt- = lens _sqStartAt (\ s a -> s{_sqStartAt = a})---- | The number of results to skip. Applies before limit, but after all other--- constraints. Must be >= 0 if specified.-sqOffSet :: Lens' StructuredQuery (Maybe Int32)-sqOffSet- = lens _sqOffSet (\ s a -> s{_sqOffSet = a}) .- mapping _Coerce---- | The collections to query.-sqFrom :: Lens' StructuredQuery [CollectionSelector]-sqFrom- = lens _sqFrom (\ s a -> s{_sqFrom = a}) . _Default .- _Coerce---- | A end point for the query results.-sqEndAt :: Lens' StructuredQuery (Maybe Cursor)-sqEndAt = lens _sqEndAt (\ s a -> s{_sqEndAt = a})---- | The maximum number of results to return. Applies after all other--- constraints. Must be >= 0 if specified.-sqLimit :: Lens' StructuredQuery (Maybe Int32)-sqLimit- = lens _sqLimit (\ s a -> s{_sqLimit = a}) .- mapping _Coerce---- | The projection to return.-sqSelect :: Lens' StructuredQuery (Maybe Projection)-sqSelect = lens _sqSelect (\ s a -> s{_sqSelect = a})--instance FromJSON StructuredQuery where- parseJSON- = withObject "StructuredQuery"- (\ o ->- StructuredQuery' <$>- (o .:? "where") <*> (o .:? "orderBy" .!= mempty) <*>- (o .:? "startAt")- <*> (o .:? "offset")- <*> (o .:? "from" .!= mempty)- <*> (o .:? "endAt")- <*> (o .:? "limit")- <*> (o .:? "select"))--instance ToJSON StructuredQuery where- toJSON StructuredQuery'{..}- = object- (catMaybes- [("where" .=) <$> _sqWhere,- ("orderBy" .=) <$> _sqOrderBy,- ("startAt" .=) <$> _sqStartAt,- ("offset" .=) <$> _sqOffSet, ("from" .=) <$> _sqFrom,- ("endAt" .=) <$> _sqEndAt, ("limit" .=) <$> _sqLimit,- ("select" .=) <$> _sqSelect])---- | A digest of all the documents that match a given target.------ /See:/ 'existenceFilter' smart constructor.-data ExistenceFilter = ExistenceFilter'- { _efTargetId :: !(Maybe (Textual Int32))- , _efCount :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ExistenceFilter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'efTargetId'------ * 'efCount'-existenceFilter- :: ExistenceFilter-existenceFilter =- ExistenceFilter'- { _efTargetId = Nothing- , _efCount = Nothing- }---- | The target ID to which this filter applies.-efTargetId :: Lens' ExistenceFilter (Maybe Int32)-efTargetId- = lens _efTargetId (\ s a -> s{_efTargetId = a}) .- mapping _Coerce---- | The total count of documents that match target_id. If different from the--- count of documents in the client that match, the client must manually--- determine which documents no longer match the target.-efCount :: Lens' ExistenceFilter (Maybe Int32)-efCount- = lens _efCount (\ s a -> s{_efCount = a}) .- mapping _Coerce--instance FromJSON ExistenceFilter where- parseJSON- = withObject "ExistenceFilter"- (\ o ->- ExistenceFilter' <$>- (o .:? "targetId") <*> (o .:? "count"))--instance ToJSON ExistenceFilter where- toJSON ExistenceFilter'{..}- = object- (catMaybes- [("targetId" .=) <$> _efTargetId,- ("count" .=) <$> _efCount])---- | The response for FirestoreAdmin.ListFields.------ /See:/ 'googleFirestoreAdminV1ListFieldsResponse' smart constructor.-data GoogleFirestoreAdminV1ListFieldsResponse = GoogleFirestoreAdminV1ListFieldsResponse'- { _gfavlfrNextPageToken :: !(Maybe Text)- , _gfavlfrFields :: !(Maybe [GoogleFirestoreAdminV1Field])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ListFieldsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavlfrNextPageToken'------ * 'gfavlfrFields'-googleFirestoreAdminV1ListFieldsResponse- :: GoogleFirestoreAdminV1ListFieldsResponse-googleFirestoreAdminV1ListFieldsResponse =- GoogleFirestoreAdminV1ListFieldsResponse'- { _gfavlfrNextPageToken = Nothing- , _gfavlfrFields = Nothing- }---- | A page token that may be used to request another page of results. If--- blank, this is the last page.-gfavlfrNextPageToken :: Lens' GoogleFirestoreAdminV1ListFieldsResponse (Maybe Text)-gfavlfrNextPageToken- = lens _gfavlfrNextPageToken- (\ s a -> s{_gfavlfrNextPageToken = a})---- | The requested fields.-gfavlfrFields :: Lens' GoogleFirestoreAdminV1ListFieldsResponse [GoogleFirestoreAdminV1Field]-gfavlfrFields- = lens _gfavlfrFields- (\ s a -> s{_gfavlfrFields = a})- . _Default- . _Coerce--instance FromJSON- GoogleFirestoreAdminV1ListFieldsResponse where- parseJSON- = withObject- "GoogleFirestoreAdminV1ListFieldsResponse"- (\ o ->- GoogleFirestoreAdminV1ListFieldsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "fields" .!= mempty))--instance ToJSON- GoogleFirestoreAdminV1ListFieldsResponse where- toJSON GoogleFirestoreAdminV1ListFieldsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _gfavlfrNextPageToken,- ("fields" .=) <$> _gfavlfrFields])---- | The request for FirestoreAdmin.ImportDocuments.------ /See:/ 'googleFirestoreAdminV1ImportDocumentsRequest' smart constructor.-data GoogleFirestoreAdminV1ImportDocumentsRequest = GoogleFirestoreAdminV1ImportDocumentsRequest'- { _gfavidrInputURIPrefix :: !(Maybe Text)- , _gfavidrCollectionIds :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ImportDocumentsRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavidrInputURIPrefix'------ * 'gfavidrCollectionIds'-googleFirestoreAdminV1ImportDocumentsRequest- :: GoogleFirestoreAdminV1ImportDocumentsRequest-googleFirestoreAdminV1ImportDocumentsRequest =- GoogleFirestoreAdminV1ImportDocumentsRequest'- { _gfavidrInputURIPrefix = Nothing- , _gfavidrCollectionIds = Nothing- }---- | Location of the exported files. This must match the output_uri_prefix of--- an ExportDocumentsResponse from an export that has completed--- successfully. See:--- google.firestore.admin.v1.ExportDocumentsResponse.output_uri_prefix.-gfavidrInputURIPrefix :: Lens' GoogleFirestoreAdminV1ImportDocumentsRequest (Maybe Text)-gfavidrInputURIPrefix- = lens _gfavidrInputURIPrefix- (\ s a -> s{_gfavidrInputURIPrefix = a})---- | Which collection ids to import. Unspecified means all collections--- included in the import.-gfavidrCollectionIds :: Lens' GoogleFirestoreAdminV1ImportDocumentsRequest [Text]-gfavidrCollectionIds- = lens _gfavidrCollectionIds- (\ s a -> s{_gfavidrCollectionIds = a})- . _Default- . _Coerce--instance FromJSON- GoogleFirestoreAdminV1ImportDocumentsRequest where- parseJSON- = withObject- "GoogleFirestoreAdminV1ImportDocumentsRequest"- (\ o ->- GoogleFirestoreAdminV1ImportDocumentsRequest' <$>- (o .:? "inputUriPrefix") <*>- (o .:? "collectionIds" .!= mempty))--instance ToJSON- GoogleFirestoreAdminV1ImportDocumentsRequest where- toJSON- GoogleFirestoreAdminV1ImportDocumentsRequest'{..}- = object- (catMaybes- [("inputUriPrefix" .=) <$> _gfavidrInputURIPrefix,- ("collectionIds" .=) <$> _gfavidrCollectionIds])---- | The metadata message for google.cloud.location.Location.metadata.------ /See:/ 'googleFirestoreAdminV1LocationMetadata' smart constructor.-data GoogleFirestoreAdminV1LocationMetadata =- GoogleFirestoreAdminV1LocationMetadata'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1LocationMetadata' with the minimum fields required to make a request.----googleFirestoreAdminV1LocationMetadata- :: GoogleFirestoreAdminV1LocationMetadata-googleFirestoreAdminV1LocationMetadata =- GoogleFirestoreAdminV1LocationMetadata'--instance FromJSON- GoogleFirestoreAdminV1LocationMetadata where- parseJSON- = withObject "GoogleFirestoreAdminV1LocationMetadata"- (\ o -> pure GoogleFirestoreAdminV1LocationMetadata')--instance ToJSON- GoogleFirestoreAdminV1LocationMetadata where- toJSON = const emptyObject---- | The request message for Operations.CancelOperation.------ /See:/ 'googleLongrunningCancelOperationRequest' smart constructor.-data GoogleLongrunningCancelOperationRequest =- GoogleLongrunningCancelOperationRequest'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleLongrunningCancelOperationRequest' with the minimum fields required to make a request.----googleLongrunningCancelOperationRequest- :: GoogleLongrunningCancelOperationRequest-googleLongrunningCancelOperationRequest =- GoogleLongrunningCancelOperationRequest'--instance FromJSON- GoogleLongrunningCancelOperationRequest where- parseJSON- = withObject- "GoogleLongrunningCancelOperationRequest"- (\ o ->- pure GoogleLongrunningCancelOperationRequest')--instance ToJSON- GoogleLongrunningCancelOperationRequest where- toJSON = const emptyObject---- | The response from Firestore.ListCollectionIds.------ /See:/ 'listCollectionIdsResponse' smart constructor.-data ListCollectionIdsResponse = ListCollectionIdsResponse'- { _lcirNextPageToken :: !(Maybe Text)- , _lcirCollectionIds :: !(Maybe [Text])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListCollectionIdsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lcirNextPageToken'------ * 'lcirCollectionIds'-listCollectionIdsResponse- :: ListCollectionIdsResponse-listCollectionIdsResponse =- ListCollectionIdsResponse'- { _lcirNextPageToken = Nothing- , _lcirCollectionIds = Nothing- }---- | A page token that may be used to continue the list.-lcirNextPageToken :: Lens' ListCollectionIdsResponse (Maybe Text)-lcirNextPageToken- = lens _lcirNextPageToken- (\ s a -> s{_lcirNextPageToken = a})---- | The collection ids.-lcirCollectionIds :: Lens' ListCollectionIdsResponse [Text]-lcirCollectionIds- = lens _lcirCollectionIds- (\ s a -> s{_lcirCollectionIds = a})- . _Default- . _Coerce--instance FromJSON ListCollectionIdsResponse where- parseJSON- = withObject "ListCollectionIdsResponse"- (\ o ->- ListCollectionIdsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "collectionIds" .!= mempty))--instance ToJSON ListCollectionIdsResponse where- toJSON ListCollectionIdsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lcirNextPageToken,- ("collectionIds" .=) <$> _lcirCollectionIds])---- | A reference to a field, such as \`max(messages.time) as max_time\`.------ /See:/ 'fieldReference' smart constructor.-newtype FieldReference = FieldReference'- { _frFieldPath :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FieldReference' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'frFieldPath'-fieldReference- :: FieldReference-fieldReference =- FieldReference'- { _frFieldPath = Nothing- }--frFieldPath :: Lens' FieldReference (Maybe Text)-frFieldPath- = lens _frFieldPath (\ s a -> s{_frFieldPath = a})--instance FromJSON FieldReference where- parseJSON- = withObject "FieldReference"- (\ o -> FieldReference' <$> (o .:? "fieldPath"))--instance ToJSON FieldReference where- toJSON FieldReference'{..}- = object- (catMaybes [("fieldPath" .=) <$> _frFieldPath])---- | A Document has been removed from the view of the targets. Sent if the--- document is no longer relevant to a target and is out of view. Can be--- sent instead of a DocumentDelete or a DocumentChange if the server can--- not send the new value of the document. Multiple DocumentRemove messages--- may be returned for the same logical write or delete, if multiple--- targets are affected.------ /See:/ 'documentRemove' smart constructor.-data DocumentRemove = DocumentRemove'- { _drReadTime :: !(Maybe DateTime')- , _drDocument :: !(Maybe Text)- , _drRemovedTargetIds :: !(Maybe [Textual Int32])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentRemove' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'drReadTime'------ * 'drDocument'------ * 'drRemovedTargetIds'-documentRemove- :: DocumentRemove-documentRemove =- DocumentRemove'- { _drReadTime = Nothing- , _drDocument = Nothing- , _drRemovedTargetIds = Nothing- }---- | The read timestamp at which the remove was observed. Greater or equal to--- the \`commit_time\` of the change\/delete\/remove.-drReadTime :: Lens' DocumentRemove (Maybe UTCTime)-drReadTime- = lens _drReadTime (\ s a -> s{_drReadTime = a}) .- mapping _DateTime---- | The resource name of the Document that has gone out of view.-drDocument :: Lens' DocumentRemove (Maybe Text)-drDocument- = lens _drDocument (\ s a -> s{_drDocument = a})---- | A set of target IDs for targets that previously matched this document.-drRemovedTargetIds :: Lens' DocumentRemove [Int32]-drRemovedTargetIds- = lens _drRemovedTargetIds- (\ s a -> s{_drRemovedTargetIds = a})- . _Default- . _Coerce--instance FromJSON DocumentRemove where- parseJSON- = withObject "DocumentRemove"- (\ o ->- DocumentRemove' <$>- (o .:? "readTime") <*> (o .:? "document") <*>- (o .:? "removedTargetIds" .!= mempty))--instance ToJSON DocumentRemove where- toJSON DocumentRemove'{..}- = object- (catMaybes- [("readTime" .=) <$> _drReadTime,- ("document" .=) <$> _drDocument,- ("removedTargetIds" .=) <$> _drRemovedTargetIds])---- | A Document has changed. May be the result of multiple writes, including--- deletes, that ultimately resulted in a new value for the Document.--- Multiple DocumentChange messages may be returned for the same logical--- change, if multiple targets are affected.------ /See:/ 'documentChange' smart constructor.-data DocumentChange = DocumentChange'- { _dcDocument :: !(Maybe Document)- , _dcTargetIds :: !(Maybe [Textual Int32])- , _dcRemovedTargetIds :: !(Maybe [Textual Int32])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentChange' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dcDocument'------ * 'dcTargetIds'------ * 'dcRemovedTargetIds'-documentChange- :: DocumentChange-documentChange =- DocumentChange'- { _dcDocument = Nothing- , _dcTargetIds = Nothing- , _dcRemovedTargetIds = Nothing- }---- | The new state of the Document. If \`mask\` is set, contains only fields--- that were updated or added.-dcDocument :: Lens' DocumentChange (Maybe Document)-dcDocument- = lens _dcDocument (\ s a -> s{_dcDocument = a})---- | A set of target IDs of targets that match this document.-dcTargetIds :: Lens' DocumentChange [Int32]-dcTargetIds- = lens _dcTargetIds (\ s a -> s{_dcTargetIds = a}) .- _Default- . _Coerce---- | A set of target IDs for targets that no longer match this document.-dcRemovedTargetIds :: Lens' DocumentChange [Int32]-dcRemovedTargetIds- = lens _dcRemovedTargetIds- (\ s a -> s{_dcRemovedTargetIds = a})- . _Default- . _Coerce--instance FromJSON DocumentChange where- parseJSON- = withObject "DocumentChange"- (\ o ->- DocumentChange' <$>- (o .:? "document") <*> (o .:? "targetIds" .!= mempty)- <*> (o .:? "removedTargetIds" .!= mempty))--instance ToJSON DocumentChange where- toJSON DocumentChange'{..}- = object- (catMaybes- [("document" .=) <$> _dcDocument,- ("targetIds" .=) <$> _dcTargetIds,- ("removedTargetIds" .=) <$> _dcRemovedTargetIds])---- | Metadata for google.longrunning.Operation results from--- FirestoreAdmin.UpdateField.------ /See:/ 'googleFirestoreAdminV1FieldOperationMetadata' smart constructor.-data GoogleFirestoreAdminV1FieldOperationMetadata = GoogleFirestoreAdminV1FieldOperationMetadata'- { _gfavfomProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavfomState :: !(Maybe GoogleFirestoreAdminV1FieldOperationMetadataState)- , _gfavfomField :: !(Maybe Text)- , _gfavfomStartTime :: !(Maybe DateTime')- , _gfavfomProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfavfomIndexConfigDeltas :: !(Maybe [GoogleFirestoreAdminV1IndexConfigDelta])- , _gfavfomEndTime :: !(Maybe DateTime')- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1FieldOperationMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavfomProgressBytes'------ * 'gfavfomState'------ * 'gfavfomField'------ * 'gfavfomStartTime'------ * 'gfavfomProgressDocuments'------ * 'gfavfomIndexConfigDeltas'------ * 'gfavfomEndTime'-googleFirestoreAdminV1FieldOperationMetadata- :: GoogleFirestoreAdminV1FieldOperationMetadata-googleFirestoreAdminV1FieldOperationMetadata =- GoogleFirestoreAdminV1FieldOperationMetadata'- { _gfavfomProgressBytes = Nothing- , _gfavfomState = Nothing- , _gfavfomField = Nothing- , _gfavfomStartTime = Nothing- , _gfavfomProgressDocuments = Nothing- , _gfavfomIndexConfigDeltas = Nothing- , _gfavfomEndTime = Nothing- }---- | The progress, in bytes, of this operation.-gfavfomProgressBytes :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavfomProgressBytes- = lens _gfavfomProgressBytes- (\ s a -> s{_gfavfomProgressBytes = a})---- | The state of the operation.-gfavfomState :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1FieldOperationMetadataState)-gfavfomState- = lens _gfavfomState (\ s a -> s{_gfavfomState = a})---- | The field resource that this operation is acting on. For example:--- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/fields\/{field_path}\`-gfavfomField :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe Text)-gfavfomField- = lens _gfavfomField (\ s a -> s{_gfavfomField = a})---- | The time this operation started.-gfavfomStartTime :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe UTCTime)-gfavfomStartTime- = lens _gfavfomStartTime- (\ s a -> s{_gfavfomStartTime = a})- . mapping _DateTime---- | The progress, in documents, of this operation.-gfavfomProgressDocuments :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfavfomProgressDocuments- = lens _gfavfomProgressDocuments- (\ s a -> s{_gfavfomProgressDocuments = a})---- | A list of IndexConfigDelta, which describe the intent of this operation.-gfavfomIndexConfigDeltas :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata [GoogleFirestoreAdminV1IndexConfigDelta]-gfavfomIndexConfigDeltas- = lens _gfavfomIndexConfigDeltas- (\ s a -> s{_gfavfomIndexConfigDeltas = a})- . _Default- . _Coerce---- | The time this operation completed. Will be unset if operation still in--- progress.-gfavfomEndTime :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe UTCTime)-gfavfomEndTime- = lens _gfavfomEndTime- (\ s a -> s{_gfavfomEndTime = a})- . mapping _DateTime--instance FromJSON- GoogleFirestoreAdminV1FieldOperationMetadata where- parseJSON- = withObject- "GoogleFirestoreAdminV1FieldOperationMetadata"- (\ o ->- GoogleFirestoreAdminV1FieldOperationMetadata' <$>- (o .:? "progressBytes") <*> (o .:? "state") <*>- (o .:? "field")- <*> (o .:? "startTime")- <*> (o .:? "progressDocuments")- <*> (o .:? "indexConfigDeltas" .!= mempty)- <*> (o .:? "endTime"))--instance ToJSON- GoogleFirestoreAdminV1FieldOperationMetadata where- toJSON- GoogleFirestoreAdminV1FieldOperationMetadata'{..}- = object- (catMaybes- [("progressBytes" .=) <$> _gfavfomProgressBytes,- ("state" .=) <$> _gfavfomState,- ("field" .=) <$> _gfavfomField,- ("startTime" .=) <$> _gfavfomStartTime,- ("progressDocuments" .=) <$>- _gfavfomProgressDocuments,- ("indexConfigDeltas" .=) <$>- _gfavfomIndexConfigDeltas,- ("endTime" .=) <$> _gfavfomEndTime])---- | The response for FirestoreAdmin.ListIndexes.------ /See:/ 'googleFirestoreAdminV1ListIndexesResponse' smart constructor.-data GoogleFirestoreAdminV1ListIndexesResponse = GoogleFirestoreAdminV1ListIndexesResponse'- { _gfavlirNextPageToken :: !(Maybe Text)- , _gfavlirIndexes :: !(Maybe [GoogleFirestoreAdminV1Index])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ListIndexesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfavlirNextPageToken'------ * 'gfavlirIndexes'-googleFirestoreAdminV1ListIndexesResponse- :: GoogleFirestoreAdminV1ListIndexesResponse-googleFirestoreAdminV1ListIndexesResponse =- GoogleFirestoreAdminV1ListIndexesResponse'- { _gfavlirNextPageToken = Nothing- , _gfavlirIndexes = Nothing- }---- | A page token that may be used to request another page of results. If--- blank, this is the last page.-gfavlirNextPageToken :: Lens' GoogleFirestoreAdminV1ListIndexesResponse (Maybe Text)-gfavlirNextPageToken- = lens _gfavlirNextPageToken- (\ s a -> s{_gfavlirNextPageToken = a})---- | The requested indexes.-gfavlirIndexes :: Lens' GoogleFirestoreAdminV1ListIndexesResponse [GoogleFirestoreAdminV1Index]-gfavlirIndexes- = lens _gfavlirIndexes- (\ s a -> s{_gfavlirIndexes = a})- . _Default- . _Coerce--instance FromJSON- GoogleFirestoreAdminV1ListIndexesResponse where- parseJSON- = withObject- "GoogleFirestoreAdminV1ListIndexesResponse"- (\ o ->- GoogleFirestoreAdminV1ListIndexesResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "indexes" .!= mempty))--instance ToJSON- GoogleFirestoreAdminV1ListIndexesResponse where- toJSON GoogleFirestoreAdminV1ListIndexesResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _gfavlirNextPageToken,- ("indexes" .=) <$> _gfavlirIndexes])---- | A map value.------ /See:/ 'mapValue' smart constructor.-newtype MapValue = MapValue'- { _mvFields :: Maybe MapValueFields- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'MapValue' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mvFields'-mapValue- :: MapValue-mapValue =- MapValue'- { _mvFields = Nothing- }---- | The map\'s fields. The map keys represent field names. Field names--- matching the regular expression \`__.*__\` are reserved. Reserved field--- names are forbidden except in certain documented contexts. The map keys,--- represented as UTF-8, must not exceed 1,500 bytes and cannot be empty.-mvFields :: Lens' MapValue (Maybe MapValueFields)-mvFields = lens _mvFields (\ s a -> s{_mvFields = a})--instance FromJSON MapValue where- parseJSON- = withObject "MapValue"- (\ o -> MapValue' <$> (o .:? "fields"))--instance ToJSON MapValue where- toJSON MapValue'{..}- = object (catMaybes [("fields" .=) <$> _mvFields])---- | The request for Firestore.BatchGetDocuments.------ /See:/ 'batchGetDocumentsRequest' smart constructor.-data BatchGetDocumentsRequest = BatchGetDocumentsRequest'- { _bReadTime :: !(Maybe DateTime')- , _bNewTransaction :: !(Maybe TransactionOptions)- , _bTransaction :: !(Maybe Bytes)- , _bDocuments :: !(Maybe [Text])- , _bMask :: !(Maybe DocumentMask)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'BatchGetDocumentsRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'bReadTime'------ * 'bNewTransaction'------ * 'bTransaction'------ * 'bDocuments'------ * 'bMask'-batchGetDocumentsRequest- :: BatchGetDocumentsRequest-batchGetDocumentsRequest =- BatchGetDocumentsRequest'- { _bReadTime = Nothing- , _bNewTransaction = Nothing- , _bTransaction = Nothing- , _bDocuments = Nothing- , _bMask = Nothing- }---- | Reads documents as they were at the given time. This may not be older--- than 60 seconds.-bReadTime :: Lens' BatchGetDocumentsRequest (Maybe UTCTime)-bReadTime- = lens _bReadTime (\ s a -> s{_bReadTime = a}) .- mapping _DateTime---- | Starts a new transaction and reads the documents. Defaults to a--- read-only transaction. The new transaction ID will be returned as the--- first response in the stream.-bNewTransaction :: Lens' BatchGetDocumentsRequest (Maybe TransactionOptions)-bNewTransaction- = lens _bNewTransaction- (\ s a -> s{_bNewTransaction = a})---- | Reads documents in a transaction.-bTransaction :: Lens' BatchGetDocumentsRequest (Maybe ByteString)-bTransaction- = lens _bTransaction (\ s a -> s{_bTransaction = a})- . mapping _Bytes---- | The names of the documents to retrieve. In the format:--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.--- The request will fail if any of the document is not a child resource of--- the given \`database\`. Duplicate names will be elided.-bDocuments :: Lens' BatchGetDocumentsRequest [Text]-bDocuments- = lens _bDocuments (\ s a -> s{_bDocuments = a}) .- _Default- . _Coerce---- | The fields to return. If not set, returns all fields. If a document has--- a field that is not present in this mask, that field will not be--- returned in the response.-bMask :: Lens' BatchGetDocumentsRequest (Maybe DocumentMask)-bMask = lens _bMask (\ s a -> s{_bMask = a})--instance FromJSON BatchGetDocumentsRequest where- parseJSON- = withObject "BatchGetDocumentsRequest"- (\ o ->- BatchGetDocumentsRequest' <$>- (o .:? "readTime") <*> (o .:? "newTransaction") <*>- (o .:? "transaction")- <*> (o .:? "documents" .!= mempty)- <*> (o .:? "mask"))--instance ToJSON BatchGetDocumentsRequest where- toJSON BatchGetDocumentsRequest'{..}- = object- (catMaybes- [("readTime" .=) <$> _bReadTime,- ("newTransaction" .=) <$> _bNewTransaction,- ("transaction" .=) <$> _bTransaction,- ("documents" .=) <$> _bDocuments,- ("mask" .=) <$> _bMask])---- | A Firestore document. Must not exceed 1 MiB - 4 bytes.------ /See:/ 'document' smart constructor.-data Document = Document'- { _dUpdateTime :: !(Maybe DateTime')- , _dName :: !(Maybe Text)- , _dCreateTime :: !(Maybe DateTime')- , _dFields :: !(Maybe DocumentFields)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Document' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dUpdateTime'------ * 'dName'------ * 'dCreateTime'------ * 'dFields'-document- :: Document-document =- Document'- { _dUpdateTime = Nothing- , _dName = Nothing- , _dCreateTime = Nothing- , _dFields = Nothing- }---- | Output only. The time at which the document was last changed. This value--- is initially set to the \`create_time\` then increases monotonically--- with each change to the document. It can also be compared to values from--- other documents and the \`read_time\` of a query.-dUpdateTime :: Lens' Document (Maybe UTCTime)-dUpdateTime- = lens _dUpdateTime (\ s a -> s{_dUpdateTime = a}) .- mapping _DateTime---- | The resource name of the document, for example--- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.-dName :: Lens' Document (Maybe Text)-dName = lens _dName (\ s a -> s{_dName = a})---- | Output only. The time at which the document was created. This value--- increases monotonically when a document is deleted then recreated. It--- can also be compared to values from other documents and the--- \`read_time\` of a query.-dCreateTime :: Lens' Document (Maybe UTCTime)-dCreateTime- = lens _dCreateTime (\ s a -> s{_dCreateTime = a}) .- mapping _DateTime---- | The document\'s fields. The map keys represent field names. A simple--- field name contains only characters \`a\` to \`z\`, \`A\` to \`Z\`,--- \`0\` to \`9\`, or \`_\`, and must not start with \`0\` to \`9\`. For--- example, \`foo_bar_17\`. Field names matching the regular expression--- \`__.*__\` are reserved. Reserved field names are forbidden except in--- certain documented contexts. The map keys, represented as UTF-8, must--- not exceed 1,500 bytes and cannot be empty. Field paths may be used in--- other contexts to refer to structured fields defined here. For--- \`map_value\`, the field path is represented by the simple or quoted--- field names of the containing fields, delimited by \`.\`. For example,--- the structured field \`\"foo\" : { map_value: { \"x&y\" : {--- string_value: \"hello\" }}}\` would be represented by the field path--- \`foo.x&y\`. Within a field path, a quoted field name starts and ends--- with \`\` \` \`\` and may contain any character. Some characters,--- including \`\` \` \`\`, must be escaped using a \`\\\`. For example,--- \`\` \`x&y\` \`\` represents \`x&y\` and \`\` \`bak\\\`tik\` \`\`--- represents \`\` bak\`tik \`\`.-dFields :: Lens' Document (Maybe DocumentFields)-dFields = lens _dFields (\ s a -> s{_dFields = a})--instance FromJSON Document where- parseJSON- = withObject "Document"- (\ o ->- Document' <$>- (o .:? "updateTime") <*> (o .:? "name") <*>- (o .:? "createTime")- <*> (o .:? "fields"))--instance ToJSON Document where- toJSON Document'{..}- = object- (catMaybes- [("updateTime" .=) <$> _dUpdateTime,- ("name" .=) <$> _dName,- ("createTime" .=) <$> _dCreateTime,- ("fields" .=) <$> _dFields])---- | An array value.------ /See:/ 'arrayValue' smart constructor.-newtype ArrayValue = ArrayValue'- { _avValues :: Maybe [Value]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ArrayValue' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'avValues'-arrayValue- :: ArrayValue-arrayValue =- ArrayValue'- { _avValues = Nothing- }---- | Values in the array.-avValues :: Lens' ArrayValue [Value]-avValues- = lens _avValues (\ s a -> s{_avValues = a}) .- _Default- . _Coerce--instance FromJSON ArrayValue where- parseJSON- = withObject "ArrayValue"- (\ o -> ArrayValue' <$> (o .:? "values" .!= mempty))--instance ToJSON ArrayValue where- toJSON ArrayValue'{..}- = object (catMaybes [("values" .=) <$> _avValues])---- | The response for Firestore.Commit.------ /See:/ 'commitResponse' smart constructor.-data CommitResponse = CommitResponse'- { _crCommitTime :: !(Maybe DateTime')- , _crWriteResults :: !(Maybe [WriteResult])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CommitResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crCommitTime'------ * 'crWriteResults'-commitResponse- :: CommitResponse-commitResponse =- CommitResponse'- { _crCommitTime = Nothing- , _crWriteResults = Nothing- }---- | The time at which the commit occurred.-crCommitTime :: Lens' CommitResponse (Maybe UTCTime)-crCommitTime- = lens _crCommitTime (\ s a -> s{_crCommitTime = a})- . mapping _DateTime---- | The result of applying the writes. This i-th write result corresponds to--- the i-th write in the request.-crWriteResults :: Lens' CommitResponse [WriteResult]-crWriteResults- = lens _crWriteResults- (\ s a -> s{_crWriteResults = a})- . _Default- . _Coerce--instance FromJSON CommitResponse where- parseJSON- = withObject "CommitResponse"- (\ o ->- CommitResponse' <$>- (o .:? "commitTime") <*>- (o .:? "writeResults" .!= mempty))--instance ToJSON CommitResponse where- toJSON CommitResponse'{..}- = object- (catMaybes- [("commitTime" .=) <$> _crCommitTime,- ("writeResults" .=) <$> _crWriteResults])---- | The response for Firestore.Listen.------ /See:/ 'listenResponse' smart constructor.-data ListenResponse = ListenResponse'- { _lrTargetChange :: !(Maybe TargetChange)- , _lrDocumentRemove :: !(Maybe DocumentRemove)- , _lrDocumentChange :: !(Maybe DocumentChange)- , _lrFilter :: !(Maybe ExistenceFilter)- , _lrDocumentDelete :: !(Maybe DocumentDelete)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListenResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrTargetChange'------ * 'lrDocumentRemove'------ * 'lrDocumentChange'------ * 'lrFilter'------ * 'lrDocumentDelete'-listenResponse- :: ListenResponse-listenResponse =- ListenResponse'- { _lrTargetChange = Nothing- , _lrDocumentRemove = Nothing- , _lrDocumentChange = Nothing- , _lrFilter = Nothing- , _lrDocumentDelete = Nothing- }---- | Targets have changed.-lrTargetChange :: Lens' ListenResponse (Maybe TargetChange)-lrTargetChange- = lens _lrTargetChange- (\ s a -> s{_lrTargetChange = a})---- | A Document has been removed from a target (because it is no longer--- relevant to that target).-lrDocumentRemove :: Lens' ListenResponse (Maybe DocumentRemove)-lrDocumentRemove- = lens _lrDocumentRemove- (\ s a -> s{_lrDocumentRemove = a})---- | A Document has changed.-lrDocumentChange :: Lens' ListenResponse (Maybe DocumentChange)-lrDocumentChange- = lens _lrDocumentChange- (\ s a -> s{_lrDocumentChange = a})---- | A filter to apply to the set of documents previously returned for the--- given target. Returned when documents may have been removed from the--- given target, but the exact documents are unknown.-lrFilter :: Lens' ListenResponse (Maybe ExistenceFilter)-lrFilter = lens _lrFilter (\ s a -> s{_lrFilter = a})---- | A Document has been deleted.-lrDocumentDelete :: Lens' ListenResponse (Maybe DocumentDelete)-lrDocumentDelete- = lens _lrDocumentDelete- (\ s a -> s{_lrDocumentDelete = a})--instance FromJSON ListenResponse where- parseJSON- = withObject "ListenResponse"- (\ o ->- ListenResponse' <$>- (o .:? "targetChange") <*> (o .:? "documentRemove")- <*> (o .:? "documentChange")- <*> (o .:? "filter")- <*> (o .:? "documentDelete"))--instance ToJSON ListenResponse where- toJSON ListenResponse'{..}- = object- (catMaybes- [("targetChange" .=) <$> _lrTargetChange,- ("documentRemove" .=) <$> _lrDocumentRemove,- ("documentChange" .=) <$> _lrDocumentChange,- ("filter" .=) <$> _lrFilter,- ("documentDelete" .=) <$> _lrDocumentDelete])---- | A filter on a specific field.------ /See:/ 'fieldFilter' smart constructor.-data FieldFilter = FieldFilter'- { _ffOp :: !(Maybe FieldFilterOp)- , _ffField :: !(Maybe FieldReference)- , _ffValue :: !(Maybe Value)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FieldFilter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ffOp'------ * 'ffField'------ * 'ffValue'-fieldFilter- :: FieldFilter-fieldFilter =- FieldFilter'- { _ffOp = Nothing- , _ffField = Nothing- , _ffValue = Nothing- }---- | The operator to filter by.-ffOp :: Lens' FieldFilter (Maybe FieldFilterOp)-ffOp = lens _ffOp (\ s a -> s{_ffOp = a})---- | The field to filter by.-ffField :: Lens' FieldFilter (Maybe FieldReference)-ffField = lens _ffField (\ s a -> s{_ffField = a})---- | The value to compare to.-ffValue :: Lens' FieldFilter (Maybe Value)-ffValue = lens _ffValue (\ s a -> s{_ffValue = a})--instance FromJSON FieldFilter where- parseJSON- = withObject "FieldFilter"- (\ o ->- FieldFilter' <$>- (o .:? "op") <*> (o .:? "field") <*> (o .:? "value"))--instance ToJSON FieldFilter where- toJSON FieldFilter'{..}- = object- (catMaybes- [("op" .=) <$> _ffOp, ("field" .=) <$> _ffField,- ("value" .=) <$> _ffValue])---- | The normal response of the operation in case of success. If the original--- method returns no data on success, such as \`Delete\`, the response is--- \`google.protobuf.Empty\`. If the original method is standard--- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.--- For other methods, the response should have the type \`XxxResponse\`,--- where \`Xxx\` is the original method name. For example, if the original--- method name is \`TakeSnapshot()\`, the inferred response type is--- \`TakeSnapshotResponse\`.------ /See:/ 'googleLongrunningOperationResponse' smart constructor.-newtype GoogleLongrunningOperationResponse = GoogleLongrunningOperationResponse'- { _glorAddtional :: HashMap Text JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleLongrunningOperationResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'glorAddtional'-googleLongrunningOperationResponse- :: HashMap Text JSONValue -- ^ 'glorAddtional'- -> GoogleLongrunningOperationResponse-googleLongrunningOperationResponse pGlorAddtional_ =- GoogleLongrunningOperationResponse'- { _glorAddtional = _Coerce # pGlorAddtional_- }---- | Properties of the object. Contains field \'type with type URL.-glorAddtional :: Lens' GoogleLongrunningOperationResponse (HashMap Text JSONValue)-glorAddtional- = lens _glorAddtional- (\ s a -> s{_glorAddtional = a})- . _Coerce--instance FromJSON GoogleLongrunningOperationResponse- where- parseJSON- = withObject "GoogleLongrunningOperationResponse"- (\ o ->- GoogleLongrunningOperationResponse' <$>- (parseJSONObject o))--instance ToJSON GoogleLongrunningOperationResponse- where- toJSON = toJSON . _glorAddtional---- | The response for Firestore.ListDocuments.------ /See:/ 'listDocumentsResponse' smart constructor.-data ListDocumentsResponse = ListDocumentsResponse'- { _ldrNextPageToken :: !(Maybe Text)- , _ldrDocuments :: !(Maybe [Document])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListDocumentsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ldrNextPageToken'------ * 'ldrDocuments'-listDocumentsResponse- :: ListDocumentsResponse-listDocumentsResponse =- ListDocumentsResponse'- { _ldrNextPageToken = Nothing- , _ldrDocuments = Nothing- }---- | The next page token.-ldrNextPageToken :: Lens' ListDocumentsResponse (Maybe Text)-ldrNextPageToken- = lens _ldrNextPageToken- (\ s a -> s{_ldrNextPageToken = a})---- | The Documents found.-ldrDocuments :: Lens' ListDocumentsResponse [Document]-ldrDocuments- = lens _ldrDocuments (\ s a -> s{_ldrDocuments = a})- . _Default- . _Coerce--instance FromJSON ListDocumentsResponse where- parseJSON- = withObject "ListDocumentsResponse"- (\ o ->- ListDocumentsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "documents" .!= mempty))--instance ToJSON ListDocumentsResponse where- toJSON ListDocumentsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _ldrNextPageToken,- ("documents" .=) <$> _ldrDocuments])---- | Returned in the google.longrunning.Operation response field.------ /See:/ 'googleFirestoreAdminV1ExportDocumentsResponse' smart constructor.-newtype GoogleFirestoreAdminV1ExportDocumentsResponse = GoogleFirestoreAdminV1ExportDocumentsResponse'- { _gOutputURIPrefix :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gOutputURIPrefix'-googleFirestoreAdminV1ExportDocumentsResponse- :: GoogleFirestoreAdminV1ExportDocumentsResponse-googleFirestoreAdminV1ExportDocumentsResponse =- GoogleFirestoreAdminV1ExportDocumentsResponse'- { _gOutputURIPrefix = Nothing- }---- | Location of the output files. This can be used to begin an import into--- Cloud Firestore (this project or another project) after the operation--- completes successfully.-gOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsResponse (Maybe Text)-gOutputURIPrefix- = lens _gOutputURIPrefix- (\ s a -> s{_gOutputURIPrefix = a})--instance FromJSON- GoogleFirestoreAdminV1ExportDocumentsResponse where- parseJSON- = withObject- "GoogleFirestoreAdminV1ExportDocumentsResponse"- (\ o ->- GoogleFirestoreAdminV1ExportDocumentsResponse' <$>- (o .:? "outputUriPrefix"))--instance ToJSON- GoogleFirestoreAdminV1ExportDocumentsResponse where- toJSON- GoogleFirestoreAdminV1ExportDocumentsResponse'{..}- = object- (catMaybes- [("outputUriPrefix" .=) <$> _gOutputURIPrefix])---- | The projection of document\'s fields to return.------ /See:/ 'projection' smart constructor.-newtype Projection = Projection'- { _pFields :: Maybe [FieldReference]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Projection' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'pFields'-projection- :: Projection-projection =- Projection'- { _pFields = Nothing- }---- | The fields to return. If empty, all fields are returned. To only return--- the name of the document, use \`[\'__name__\']\`.-pFields :: Lens' Projection [FieldReference]-pFields- = lens _pFields (\ s a -> s{_pFields = a}) . _Default- . _Coerce--instance FromJSON Projection where- parseJSON- = withObject "Projection"- (\ o -> Projection' <$> (o .:? "fields" .!= mempty))--instance ToJSON Projection where- toJSON Projection'{..}- = object (catMaybes [("fields" .=) <$> _pFields])---- | A filter.------ /See:/ 'filter'' smart constructor.-data Filter = Filter'- { _fCompositeFilter :: !(Maybe CompositeFilter)- , _fFieldFilter :: !(Maybe FieldFilter)- , _fUnaryFilter :: !(Maybe UnaryFilter)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Filter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fCompositeFilter'------ * 'fFieldFilter'------ * 'fUnaryFilter'-filter'- :: Filter-filter' =- Filter'- { _fCompositeFilter = Nothing- , _fFieldFilter = Nothing- , _fUnaryFilter = Nothing- }---- | A composite filter.-fCompositeFilter :: Lens' Filter (Maybe CompositeFilter)-fCompositeFilter- = lens _fCompositeFilter- (\ s a -> s{_fCompositeFilter = a})---- | A filter on a document field.-fFieldFilter :: Lens' Filter (Maybe FieldFilter)-fFieldFilter- = lens _fFieldFilter (\ s a -> s{_fFieldFilter = a})---- | A filter that takes exactly one argument.-fUnaryFilter :: Lens' Filter (Maybe UnaryFilter)-fUnaryFilter- = lens _fUnaryFilter (\ s a -> s{_fUnaryFilter = a})--instance FromJSON Filter where- parseJSON- = withObject "Filter"- (\ o ->- Filter' <$>- (o .:? "compositeFilter") <*> (o .:? "fieldFilter")- <*> (o .:? "unaryFilter"))--instance ToJSON Filter where- toJSON Filter'{..}- = object- (catMaybes- [("compositeFilter" .=) <$> _fCompositeFilter,- ("fieldFilter" .=) <$> _fFieldFilter,- ("unaryFilter" .=) <$> _fUnaryFilter])---- | Metadata for google.longrunning.Operation results from--- FirestoreAdmin.CreateIndex.------ /See:/ 'googleFirestoreAdminV1IndexOperationMetadata' smart constructor.-data GoogleFirestoreAdminV1IndexOperationMetadata = GoogleFirestoreAdminV1IndexOperationMetadata'- { _gfaviomProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfaviomState :: !(Maybe GoogleFirestoreAdminV1IndexOperationMetadataState)- , _gfaviomStartTime :: !(Maybe DateTime')- , _gfaviomProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)- , _gfaviomEndTime :: !(Maybe DateTime')- , _gfaviomIndex :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleFirestoreAdminV1IndexOperationMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gfaviomProgressBytes'------ * 'gfaviomState'------ * 'gfaviomStartTime'------ * 'gfaviomProgressDocuments'------ * 'gfaviomEndTime'------ * 'gfaviomIndex'-googleFirestoreAdminV1IndexOperationMetadata- :: GoogleFirestoreAdminV1IndexOperationMetadata-googleFirestoreAdminV1IndexOperationMetadata =- GoogleFirestoreAdminV1IndexOperationMetadata'- { _gfaviomProgressBytes = Nothing- , _gfaviomState = Nothing- , _gfaviomStartTime = Nothing- , _gfaviomProgressDocuments = Nothing- , _gfaviomEndTime = Nothing- , _gfaviomIndex = Nothing- }---- | The progress, in bytes, of this operation.-gfaviomProgressBytes :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfaviomProgressBytes- = lens _gfaviomProgressBytes- (\ s a -> s{_gfaviomProgressBytes = a})---- | The state of the operation.-gfaviomState :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1IndexOperationMetadataState)-gfaviomState- = lens _gfaviomState (\ s a -> s{_gfaviomState = a})---- | The time this operation started.-gfaviomStartTime :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe UTCTime)-gfaviomStartTime- = lens _gfaviomStartTime- (\ s a -> s{_gfaviomStartTime = a})- . mapping _DateTime---- | The progress, in documents, of this operation.-gfaviomProgressDocuments :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)-gfaviomProgressDocuments- = lens _gfaviomProgressDocuments- (\ s a -> s{_gfaviomProgressDocuments = a})---- | The time this operation completed. Will be unset if operation still in--- progress.-gfaviomEndTime :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe UTCTime)-gfaviomEndTime- = lens _gfaviomEndTime- (\ s a -> s{_gfaviomEndTime = a})- . mapping _DateTime---- | The index resource that this operation is acting on. For example:--- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/indexes\/{index_id}\`-gfaviomIndex :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe Text)-gfaviomIndex- = lens _gfaviomIndex (\ s a -> s{_gfaviomIndex = a})--instance FromJSON- GoogleFirestoreAdminV1IndexOperationMetadata where- parseJSON- = withObject- "GoogleFirestoreAdminV1IndexOperationMetadata"- (\ o ->- GoogleFirestoreAdminV1IndexOperationMetadata' <$>- (o .:? "progressBytes") <*> (o .:? "state") <*>- (o .:? "startTime")- <*> (o .:? "progressDocuments")- <*> (o .:? "endTime")- <*> (o .:? "index"))--instance ToJSON- GoogleFirestoreAdminV1IndexOperationMetadata where- toJSON- GoogleFirestoreAdminV1IndexOperationMetadata'{..}- = object- (catMaybes- [("progressBytes" .=) <$> _gfaviomProgressBytes,- ("state" .=) <$> _gfaviomState,- ("startTime" .=) <$> _gfaviomStartTime,- ("progressDocuments" .=) <$>- _gfaviomProgressDocuments,- ("endTime" .=) <$> _gfaviomEndTime,- ("index" .=) <$> _gfaviomIndex])---- | Cross-service attributes for the location. For example--- {\"cloud.googleapis.com\/region\": \"us-east1\"}------ /See:/ 'locationLabels' smart constructor.-newtype LocationLabels = LocationLabels'- { _llAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'LocationLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'llAddtional'-locationLabels- :: HashMap Text Text -- ^ 'llAddtional'- -> LocationLabels-locationLabels pLlAddtional_ =- LocationLabels'- { _llAddtional = _Coerce # pLlAddtional_- }--llAddtional :: Lens' LocationLabels (HashMap Text Text)-llAddtional- = lens _llAddtional (\ s a -> s{_llAddtional = a}) .- _Coerce--instance FromJSON LocationLabels where- parseJSON- = withObject "LocationLabels"- (\ o -> LocationLabels' <$> (parseJSONObject o))--instance ToJSON LocationLabels where- toJSON = toJSON . _llAddtional---- | A request for Firestore.Listen------ /See:/ 'listenRequest' smart constructor.-data ListenRequest = ListenRequest'- { _lrRemoveTarget :: !(Maybe (Textual Int32))- , _lrLabels :: !(Maybe ListenRequestLabels)- , _lrAddTarget :: !(Maybe Target)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListenRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lrRemoveTarget'------ * 'lrLabels'------ * 'lrAddTarget'-listenRequest- :: ListenRequest-listenRequest =- ListenRequest'- { _lrRemoveTarget = Nothing- , _lrLabels = Nothing- , _lrAddTarget = Nothing- }---- | The ID of a target to remove from this stream.-lrRemoveTarget :: Lens' ListenRequest (Maybe Int32)-lrRemoveTarget- = lens _lrRemoveTarget- (\ s a -> s{_lrRemoveTarget = a})- . mapping _Coerce---- | Labels associated with this target change.-lrLabels :: Lens' ListenRequest (Maybe ListenRequestLabels)-lrLabels = lens _lrLabels (\ s a -> s{_lrLabels = a})---- | A target to add to this stream.-lrAddTarget :: Lens' ListenRequest (Maybe Target)-lrAddTarget- = lens _lrAddTarget (\ s a -> s{_lrAddTarget = a})--instance FromJSON ListenRequest where- parseJSON- = withObject "ListenRequest"- (\ o ->- ListenRequest' <$>- (o .:? "removeTarget") <*> (o .:? "labels") <*>- (o .:? "addTarget"))--instance ToJSON ListenRequest where- toJSON ListenRequest'{..}- = object- (catMaybes- [("removeTarget" .=) <$> _lrRemoveTarget,- ("labels" .=) <$> _lrLabels,- ("addTarget" .=) <$> _lrAddTarget])---- | The request for Firestore.Commit.------ /See:/ 'commitRequest' smart constructor.-data CommitRequest = CommitRequest'- { _crTransaction :: !(Maybe Bytes)- , _crWrites :: !(Maybe [Write])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CommitRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crTransaction'------ * 'crWrites'-commitRequest- :: CommitRequest-commitRequest =- CommitRequest'- { _crTransaction = Nothing- , _crWrites = Nothing- }---- | If set, applies all writes in this transaction, and commits it.-crTransaction :: Lens' CommitRequest (Maybe ByteString)-crTransaction- = lens _crTransaction- (\ s a -> s{_crTransaction = a})- . mapping _Bytes---- | The writes to apply. Always executed atomically and in order.-crWrites :: Lens' CommitRequest [Write]-crWrites- = lens _crWrites (\ s a -> s{_crWrites = a}) .- _Default- . _Coerce--instance FromJSON CommitRequest where- parseJSON- = withObject "CommitRequest"- (\ o ->- CommitRequest' <$>- (o .:? "transaction") <*>- (o .:? "writes" .!= mempty))--instance ToJSON CommitRequest where- toJSON CommitRequest'{..}- = object- (catMaybes- [("transaction" .=) <$> _crTransaction,- ("writes" .=) <$> _crWrites])---- | Service-specific metadata. For example the available capacity at the--- given location.------ /See:/ 'locationMetadata' smart constructor.-newtype LocationMetadata = LocationMetadata'- { _lmAddtional :: HashMap Text JSONValue- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'LocationMetadata' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lmAddtional'-locationMetadata- :: HashMap Text JSONValue -- ^ 'lmAddtional'- -> LocationMetadata-locationMetadata pLmAddtional_ =- LocationMetadata'- { _lmAddtional = _Coerce # pLmAddtional_- }---- | Properties of the object. Contains field \'type with type URL.-lmAddtional :: Lens' LocationMetadata (HashMap Text JSONValue)-lmAddtional- = lens _lmAddtional (\ s a -> s{_lmAddtional = a}) .- _Coerce--instance FromJSON LocationMetadata where- parseJSON- = withObject "LocationMetadata"- (\ o -> LocationMetadata' <$> (parseJSONObject o))--instance ToJSON LocationMetadata where- toJSON = toJSON . _lmAddtional---- | The response message for Operations.ListOperations.------ /See:/ 'googleLongrunningListOperationsResponse' smart constructor.-data GoogleLongrunningListOperationsResponse = GoogleLongrunningListOperationsResponse'- { _gllorNextPageToken :: !(Maybe Text)- , _gllorOperations :: !(Maybe [GoogleLongrunningOperation])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleLongrunningListOperationsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gllorNextPageToken'------ * 'gllorOperations'-googleLongrunningListOperationsResponse- :: GoogleLongrunningListOperationsResponse-googleLongrunningListOperationsResponse =- GoogleLongrunningListOperationsResponse'- { _gllorNextPageToken = Nothing- , _gllorOperations = Nothing- }---- | The standard List next-page token.-gllorNextPageToken :: Lens' GoogleLongrunningListOperationsResponse (Maybe Text)-gllorNextPageToken- = lens _gllorNextPageToken- (\ s a -> s{_gllorNextPageToken = a})---- | A list of operations that matches the specified filter in the request.-gllorOperations :: Lens' GoogleLongrunningListOperationsResponse [GoogleLongrunningOperation]-gllorOperations- = lens _gllorOperations- (\ s a -> s{_gllorOperations = a})- . _Default- . _Coerce--instance FromJSON- GoogleLongrunningListOperationsResponse where- parseJSON- = withObject- "GoogleLongrunningListOperationsResponse"- (\ o ->- GoogleLongrunningListOperationsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "operations" .!= mempty))--instance ToJSON- GoogleLongrunningListOperationsResponse where- toJSON GoogleLongrunningListOperationsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _gllorNextPageToken,- ("operations" .=) <$> _gllorOperations])---- | A selection of a collection, such as \`messages as m1\`.------ /See:/ 'collectionSelector' smart constructor.-data CollectionSelector = CollectionSelector'- { _csAllDescendants :: !(Maybe Bool)- , _csCollectionId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CollectionSelector' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csAllDescendants'------ * 'csCollectionId'-collectionSelector- :: CollectionSelector-collectionSelector =- CollectionSelector'- { _csAllDescendants = Nothing- , _csCollectionId = Nothing- }---- | When false, selects only collections that are immediate children of the--- \`parent\` specified in the containing \`RunQueryRequest\`. When true,--- selects all descendant collections.-csAllDescendants :: Lens' CollectionSelector (Maybe Bool)-csAllDescendants- = lens _csAllDescendants- (\ s a -> s{_csAllDescendants = a})---- | The collection ID. When set, selects only collections with this ID.-csCollectionId :: Lens' CollectionSelector (Maybe Text)-csCollectionId- = lens _csCollectionId- (\ s a -> s{_csCollectionId = a})--instance FromJSON CollectionSelector where- parseJSON- = withObject "CollectionSelector"- (\ o ->- CollectionSelector' <$>- (o .:? "allDescendants") <*> (o .:? "collectionId"))--instance ToJSON CollectionSelector where- toJSON CollectionSelector'{..}- = object- (catMaybes- [("allDescendants" .=) <$> _csAllDescendants,- ("collectionId" .=) <$> _csCollectionId])---- | The request for Firestore.ListCollectionIds.------ /See:/ 'listCollectionIdsRequest' smart constructor.-data ListCollectionIdsRequest = ListCollectionIdsRequest'- { _lcirPageToken :: !(Maybe Text)- , _lcirPageSize :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListCollectionIdsRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lcirPageToken'------ * 'lcirPageSize'-listCollectionIdsRequest- :: ListCollectionIdsRequest-listCollectionIdsRequest =- ListCollectionIdsRequest'- { _lcirPageToken = Nothing- , _lcirPageSize = Nothing- }---- | A page token. Must be a value from ListCollectionIdsResponse.-lcirPageToken :: Lens' ListCollectionIdsRequest (Maybe Text)-lcirPageToken- = lens _lcirPageToken- (\ s a -> s{_lcirPageToken = a})---- | The maximum number of results to return.-lcirPageSize :: Lens' ListCollectionIdsRequest (Maybe Int32)-lcirPageSize- = lens _lcirPageSize (\ s a -> s{_lcirPageSize = a})- . mapping _Coerce--instance FromJSON ListCollectionIdsRequest where- parseJSON- = withObject "ListCollectionIdsRequest"- (\ o ->- ListCollectionIdsRequest' <$>- (o .:? "pageToken") <*> (o .:? "pageSize"))--instance ToJSON ListCollectionIdsRequest where- toJSON ListCollectionIdsRequest'{..}- = object- (catMaybes- [("pageToken" .=) <$> _lcirPageToken,- ("pageSize" .=) <$> _lcirPageSize])---- | The response for Firestore.Write.------ /See:/ 'writeResponse' smart constructor.-data WriteResponse = WriteResponse'- { _wStreamToken :: !(Maybe Bytes)- , _wCommitTime :: !(Maybe DateTime')- , _wWriteResults :: !(Maybe [WriteResult])- , _wStreamId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WriteResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wStreamToken'------ * 'wCommitTime'------ * 'wWriteResults'------ * 'wStreamId'-writeResponse- :: WriteResponse-writeResponse =- WriteResponse'- { _wStreamToken = Nothing- , _wCommitTime = Nothing- , _wWriteResults = Nothing- , _wStreamId = Nothing- }---- | A token that represents the position of this response in the stream.--- This can be used by a client to resume the stream at this point. This--- field is always set.-wStreamToken :: Lens' WriteResponse (Maybe ByteString)-wStreamToken- = lens _wStreamToken (\ s a -> s{_wStreamToken = a})- . mapping _Bytes---- | The time at which the commit occurred.-wCommitTime :: Lens' WriteResponse (Maybe UTCTime)-wCommitTime- = lens _wCommitTime (\ s a -> s{_wCommitTime = a}) .- mapping _DateTime---- | The result of applying the writes. This i-th write result corresponds to--- the i-th write in the request.-wWriteResults :: Lens' WriteResponse [WriteResult]-wWriteResults- = lens _wWriteResults- (\ s a -> s{_wWriteResults = a})- . _Default- . _Coerce---- | The ID of the stream. Only set on the first message, when a new stream--- was created.-wStreamId :: Lens' WriteResponse (Maybe Text)-wStreamId- = lens _wStreamId (\ s a -> s{_wStreamId = a})--instance FromJSON WriteResponse where- parseJSON- = withObject "WriteResponse"- (\ o ->- WriteResponse' <$>- (o .:? "streamToken") <*> (o .:? "commitTime") <*>- (o .:? "writeResults" .!= mempty)- <*> (o .:? "streamId"))--instance ToJSON WriteResponse where- toJSON WriteResponse'{..}- = object- (catMaybes- [("streamToken" .=) <$> _wStreamToken,- ("commitTime" .=) <$> _wCommitTime,- ("writeResults" .=) <$> _wWriteResults,- ("streamId" .=) <$> _wStreamId])---- | An order on a field.------ /See:/ 'order' smart constructor.-data Order = Order'- { _oField :: !(Maybe FieldReference)- , _oDirection :: !(Maybe OrderDirection)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Order' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'oField'------ * 'oDirection'-order- :: Order-order =- Order'- { _oField = Nothing- , _oDirection = Nothing- }---- | The field to order by.-oField :: Lens' Order (Maybe FieldReference)-oField = lens _oField (\ s a -> s{_oField = a})---- | The direction to order by. Defaults to \`ASCENDING\`.-oDirection :: Lens' Order (Maybe OrderDirection)-oDirection- = lens _oDirection (\ s a -> s{_oDirection = a})--instance FromJSON Order where- parseJSON- = withObject "Order"- (\ o ->- Order' <$> (o .:? "field") <*> (o .:? "direction"))--instance ToJSON Order where- toJSON Order'{..}- = object- (catMaybes- [("field" .=) <$> _oField,- ("direction" .=) <$> _oDirection])---- | A Document has been deleted. May be the result of multiple writes,--- including updates, the last of which deleted the Document. Multiple--- DocumentDelete messages may be returned for the same logical delete, if--- multiple targets are affected.------ /See:/ 'documentDelete' smart constructor.-data DocumentDelete = DocumentDelete'- { _ddReadTime :: !(Maybe DateTime')- , _ddDocument :: !(Maybe Text)- , _ddRemovedTargetIds :: !(Maybe [Textual Int32])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentDelete' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ddReadTime'------ * 'ddDocument'------ * 'ddRemovedTargetIds'-documentDelete- :: DocumentDelete-documentDelete =- DocumentDelete'- { _ddReadTime = Nothing- , _ddDocument = Nothing- , _ddRemovedTargetIds = Nothing- }---- | The read timestamp at which the delete was observed. Greater or equal to--- the \`commit_time\` of the delete.-ddReadTime :: Lens' DocumentDelete (Maybe UTCTime)-ddReadTime- = lens _ddReadTime (\ s a -> s{_ddReadTime = a}) .- mapping _DateTime---- | The resource name of the Document that was deleted.-ddDocument :: Lens' DocumentDelete (Maybe Text)-ddDocument- = lens _ddDocument (\ s a -> s{_ddDocument = a})---- | A set of target IDs for targets that previously matched this entity.-ddRemovedTargetIds :: Lens' DocumentDelete [Int32]-ddRemovedTargetIds- = lens _ddRemovedTargetIds- (\ s a -> s{_ddRemovedTargetIds = a})- . _Default- . _Coerce--instance FromJSON DocumentDelete where- parseJSON- = withObject "DocumentDelete"- (\ o ->- DocumentDelete' <$>- (o .:? "readTime") <*> (o .:? "document") <*>- (o .:? "removedTargetIds" .!= mempty))--instance ToJSON DocumentDelete where- toJSON DocumentDelete'{..}- = object- (catMaybes- [("readTime" .=) <$> _ddReadTime,- ("document" .=) <$> _ddDocument,- ("removedTargetIds" .=) <$> _ddRemovedTargetIds])---- | A transformation of a field of the document.------ /See:/ 'fieldTransform' smart constructor.-data FieldTransform = FieldTransform'- { _ftFieldPath :: !(Maybe Text)- , _ftAppendMissingElements :: !(Maybe ArrayValue)- , _ftSetToServerValue :: !(Maybe FieldTransformSetToServerValue)- , _ftRemoveAllFromArray :: !(Maybe ArrayValue)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'FieldTransform' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ftFieldPath'------ * 'ftAppendMissingElements'------ * 'ftSetToServerValue'------ * 'ftRemoveAllFromArray'-fieldTransform- :: FieldTransform-fieldTransform =- FieldTransform'- { _ftFieldPath = Nothing- , _ftAppendMissingElements = Nothing- , _ftSetToServerValue = Nothing- , _ftRemoveAllFromArray = Nothing- }---- | The path of the field. See Document.fields for the field path syntax--- reference.-ftFieldPath :: Lens' FieldTransform (Maybe Text)-ftFieldPath- = lens _ftFieldPath (\ s a -> s{_ftFieldPath = a})---- | Append the given elements in order if they are not already present in--- the current field value. If the field is not an array, or if the field--- does not yet exist, it is first set to the empty array. Equivalent--- numbers of different types (e.g. 3L and 3.0) are considered equal when--- checking if a value is missing. NaN is equal to NaN, and Null is equal--- to Null. If the input contains multiple equivalent values, only the--- first will be considered. The corresponding transform_result will be the--- null value.-ftAppendMissingElements :: Lens' FieldTransform (Maybe ArrayValue)-ftAppendMissingElements- = lens _ftAppendMissingElements- (\ s a -> s{_ftAppendMissingElements = a})---- | Sets the field to the given server value.-ftSetToServerValue :: Lens' FieldTransform (Maybe FieldTransformSetToServerValue)-ftSetToServerValue- = lens _ftSetToServerValue- (\ s a -> s{_ftSetToServerValue = a})---- | Remove all of the given elements from the array in the field. If the--- field is not an array, or if the field does not yet exist, it is set to--- the empty array. Equivalent numbers of the different types (e.g. 3L and--- 3.0) are considered equal when deciding whether an element should be--- removed. NaN is equal to NaN, and Null is equal to Null. This will--- remove all equivalent values if there are duplicates. The corresponding--- transform_result will be the null value.-ftRemoveAllFromArray :: Lens' FieldTransform (Maybe ArrayValue)-ftRemoveAllFromArray- = lens _ftRemoveAllFromArray- (\ s a -> s{_ftRemoveAllFromArray = a})--instance FromJSON FieldTransform where- parseJSON- = withObject "FieldTransform"- (\ o ->- FieldTransform' <$>- (o .:? "fieldPath") <*>- (o .:? "appendMissingElements")- <*> (o .:? "setToServerValue")- <*> (o .:? "removeAllFromArray"))--instance ToJSON FieldTransform where- toJSON FieldTransform'{..}- = object- (catMaybes- [("fieldPath" .=) <$> _ftFieldPath,- ("appendMissingElements" .=) <$>- _ftAppendMissingElements,- ("setToServerValue" .=) <$> _ftSetToServerValue,- ("removeAllFromArray" .=) <$> _ftRemoveAllFromArray])---- | The map\'s fields. The map keys represent field names. Field names--- matching the regular expression \`__.*__\` are reserved. Reserved field--- names are forbidden except in certain documented contexts. The map keys,--- represented as UTF-8, must not exceed 1,500 bytes and cannot be empty.------ /See:/ 'mapValueFields' smart constructor.-newtype MapValueFields = MapValueFields'- { _mvfAddtional :: HashMap Text Value- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'MapValueFields' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mvfAddtional'-mapValueFields- :: HashMap Text Value -- ^ 'mvfAddtional'- -> MapValueFields-mapValueFields pMvfAddtional_ =- MapValueFields'- { _mvfAddtional = _Coerce # pMvfAddtional_- }--mvfAddtional :: Lens' MapValueFields (HashMap Text Value)-mvfAddtional- = lens _mvfAddtional (\ s a -> s{_mvfAddtional = a})- . _Coerce--instance FromJSON MapValueFields where- parseJSON- = withObject "MapValueFields"- (\ o -> MapValueFields' <$> (parseJSONObject o))--instance ToJSON MapValueFields where- toJSON = toJSON . _mvfAddtional---- | The document\'s fields. The map keys represent field names. A simple--- field name contains only characters \`a\` to \`z\`, \`A\` to \`Z\`,--- \`0\` to \`9\`, or \`_\`, and must not start with \`0\` to \`9\`. For--- example, \`foo_bar_17\`. Field names matching the regular expression--- \`__.*__\` are reserved. Reserved field names are forbidden except in--- certain documented contexts. The map keys, represented as UTF-8, must--- not exceed 1,500 bytes and cannot be empty. Field paths may be used in--- other contexts to refer to structured fields defined here. For--- \`map_value\`, the field path is represented by the simple or quoted--- field names of the containing fields, delimited by \`.\`. For example,--- the structured field \`\"foo\" : { map_value: { \"x&y\" : {--- string_value: \"hello\" }}}\` would be represented by the field path--- \`foo.x&y\`. Within a field path, a quoted field name starts and ends--- with \`\` \` \`\` and may contain any character. Some characters,--- including \`\` \` \`\`, must be escaped using a \`\\\`. For example,--- \`\` \`x&y\` \`\` represents \`x&y\` and \`\` \`bak\\\`tik\` \`\`--- represents \`\` bak\`tik \`\`.------ /See:/ 'documentFields' smart constructor.-newtype DocumentFields = DocumentFields'- { _dfAddtional :: HashMap Text Value- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DocumentFields' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dfAddtional'-documentFields- :: HashMap Text Value -- ^ 'dfAddtional'- -> DocumentFields-documentFields pDfAddtional_ =- DocumentFields'- { _dfAddtional = _Coerce # pDfAddtional_- }--dfAddtional :: Lens' DocumentFields (HashMap Text Value)-dfAddtional- = lens _dfAddtional (\ s a -> s{_dfAddtional = a}) .- _Coerce--instance FromJSON DocumentFields where- parseJSON- = withObject "DocumentFields"- (\ o -> DocumentFields' <$> (parseJSONObject o))--instance ToJSON DocumentFields where- toJSON = toJSON . _dfAddtional---- | Options for a transaction that can only be used to read documents.------ /See:/ 'readOnly' smart constructor.-newtype ReadOnly = ReadOnly'- { _roReadTime :: Maybe DateTime'- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReadOnly' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'roReadTime'-readOnly- :: ReadOnly-readOnly =- ReadOnly'- { _roReadTime = Nothing- }---- | Reads documents at the given time. This may not be older than 60--- seconds.-roReadTime :: Lens' ReadOnly (Maybe UTCTime)-roReadTime- = lens _roReadTime (\ s a -> s{_roReadTime = a}) .- mapping _DateTime--instance FromJSON ReadOnly where- parseJSON- = withObject "ReadOnly"- (\ o -> ReadOnly' <$> (o .:? "readTime"))--instance ToJSON ReadOnly where- toJSON ReadOnly'{..}- = object- (catMaybes [("readTime" .=) <$> _roReadTime])---- | A specification of a set of documents to listen to.------ /See:/ 'target' smart constructor.-data Target = Target'- { _tTargetId :: !(Maybe (Textual Int32))- , _tOnce :: !(Maybe Bool)- , _tReadTime :: !(Maybe DateTime')- , _tResumeToken :: !(Maybe Bytes)- , _tDocuments :: !(Maybe DocumentsTarget)- , _tQuery :: !(Maybe QueryTarget)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Target' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tTargetId'------ * 'tOnce'------ * 'tReadTime'------ * 'tResumeToken'------ * 'tDocuments'------ * 'tQuery'-target- :: Target-target =- Target'- { _tTargetId = Nothing- , _tOnce = Nothing- , _tReadTime = Nothing- , _tResumeToken = Nothing- , _tDocuments = Nothing- , _tQuery = Nothing- }---- | A client provided target ID. If not set, the server will assign an ID--- for the target. Used for resuming a target without changing IDs. The IDs--- can either be client-assigned or be server-assigned in a previous--- stream. All targets with client provided IDs must be added before adding--- a target that needs a server-assigned id.-tTargetId :: Lens' Target (Maybe Int32)-tTargetId- = lens _tTargetId (\ s a -> s{_tTargetId = a}) .- mapping _Coerce---- | If the target should be removed once it is current and consistent.-tOnce :: Lens' Target (Maybe Bool)-tOnce = lens _tOnce (\ s a -> s{_tOnce = a})---- | Start listening after a specific \`read_time\`. The client must know the--- state of matching documents at this time.-tReadTime :: Lens' Target (Maybe UTCTime)-tReadTime- = lens _tReadTime (\ s a -> s{_tReadTime = a}) .- mapping _DateTime---- | A resume token from a prior TargetChange for an identical target. Using--- a resume token with a different target is unsupported and may fail.-tResumeToken :: Lens' Target (Maybe ByteString)-tResumeToken- = lens _tResumeToken (\ s a -> s{_tResumeToken = a})- . mapping _Bytes---- | A target specified by a set of document names.-tDocuments :: Lens' Target (Maybe DocumentsTarget)-tDocuments- = lens _tDocuments (\ s a -> s{_tDocuments = a})---- | A target specified by a query.-tQuery :: Lens' Target (Maybe QueryTarget)-tQuery = lens _tQuery (\ s a -> s{_tQuery = a})--instance FromJSON Target where- parseJSON- = withObject "Target"- (\ o ->- Target' <$>- (o .:? "targetId") <*> (o .:? "once") <*>- (o .:? "readTime")- <*> (o .:? "resumeToken")- <*> (o .:? "documents")- <*> (o .:? "query"))--instance ToJSON Target where- toJSON Target'{..}- = object- (catMaybes- [("targetId" .=) <$> _tTargetId,- ("once" .=) <$> _tOnce,- ("readTime" .=) <$> _tReadTime,- ("resumeToken" .=) <$> _tResumeToken,- ("documents" .=) <$> _tDocuments,- ("query" .=) <$> _tQuery])---- | Labels associated with this write request.------ /See:/ 'writeRequestLabels' smart constructor.-newtype WriteRequestLabels = WriteRequestLabels'- { _wrlAddtional :: HashMap Text Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'WriteRequestLabels' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'wrlAddtional'-writeRequestLabels- :: HashMap Text Text -- ^ 'wrlAddtional'- -> WriteRequestLabels-writeRequestLabels pWrlAddtional_ =- WriteRequestLabels'- { _wrlAddtional = _Coerce # pWrlAddtional_- }--wrlAddtional :: Lens' WriteRequestLabels (HashMap Text Text)-wrlAddtional- = lens _wrlAddtional (\ s a -> s{_wrlAddtional = a})- . _Coerce--instance FromJSON WriteRequestLabels where- parseJSON- = withObject "WriteRequestLabels"- (\ o -> WriteRequestLabels' <$> (parseJSONObject o))--instance ToJSON WriteRequestLabels where- toJSON = toJSON . _wrlAddtional---- | This resource represents a long-running operation that is the result of--- a network API call.------ /See:/ 'googleLongrunningOperation' smart constructor.-data GoogleLongrunningOperation = GoogleLongrunningOperation'- { _gloDone :: !(Maybe Bool)- , _gloError :: !(Maybe Status)- , _gloResponse :: !(Maybe GoogleLongrunningOperationResponse)- , _gloName :: !(Maybe Text)- , _gloMetadata :: !(Maybe GoogleLongrunningOperationMetadata)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GoogleLongrunningOperation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gloDone'------ * 'gloError'------ * 'gloResponse'------ * 'gloName'------ * 'gloMetadata'-googleLongrunningOperation- :: GoogleLongrunningOperation-googleLongrunningOperation =- GoogleLongrunningOperation'- { _gloDone = Nothing- , _gloError = Nothing- , _gloResponse = Nothing- , _gloName = Nothing- , _gloMetadata = Nothing- }---- | If the value is \`false\`, it means the operation is still in progress.--- If \`true\`, the operation is completed, and either \`error\` or--- \`response\` is available.-gloDone :: Lens' GoogleLongrunningOperation (Maybe Bool)-gloDone = lens _gloDone (\ s a -> s{_gloDone = a})---- | The error result of the operation in case of failure or cancellation.-gloError :: Lens' GoogleLongrunningOperation (Maybe Status)-gloError = lens _gloError (\ s a -> s{_gloError = a})---- | The normal response of the operation in case of success. If the original--- method returns no data on success, such as \`Delete\`, the response is--- \`google.protobuf.Empty\`. If the original method is standard--- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.--- For other methods, the response should have the type \`XxxResponse\`,--- where \`Xxx\` is the original method name. For example, if the original--- method name is \`TakeSnapshot()\`, the inferred response type is--- \`TakeSnapshotResponse\`.-gloResponse :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationResponse)-gloResponse- = lens _gloResponse (\ s a -> s{_gloResponse = a})---- | The server-assigned name, which is only unique within the same service--- that originally returns it. If you use the default HTTP mapping, the--- \`name\` should have the format of \`operations\/some\/unique\/name\`.-gloName :: Lens' GoogleLongrunningOperation (Maybe Text)-gloName = lens _gloName (\ s a -> s{_gloName = a})---- | Service-specific metadata associated with the operation. It typically--- contains progress information and common metadata such as create time.--- Some services might not provide such metadata. Any method that returns a--- long-running operation should document the metadata type, if any.-gloMetadata :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationMetadata)-gloMetadata- = lens _gloMetadata (\ s a -> s{_gloMetadata = a})--instance FromJSON GoogleLongrunningOperation where- parseJSON- = withObject "GoogleLongrunningOperation"- (\ o ->- GoogleLongrunningOperation' <$>- (o .:? "done") <*> (o .:? "error") <*>- (o .:? "response")- <*> (o .:? "name")- <*> (o .:? "metadata"))--instance ToJSON GoogleLongrunningOperation where- toJSON GoogleLongrunningOperation'{..}- = object- (catMaybes- [("done" .=) <$> _gloDone,- ("error" .=) <$> _gloError,- ("response" .=) <$> _gloResponse,- ("name" .=) <$> _gloName,- ("metadata" .=) <$> _gloMetadata])---- | A filter with a single operand.------ /See:/ 'unaryFilter' smart constructor.-data UnaryFilter = UnaryFilter'- { _ufOp :: !(Maybe UnaryFilterOp)- , _ufField :: !(Maybe FieldReference)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UnaryFilter' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ufOp'------ * 'ufField'-unaryFilter- :: UnaryFilter-unaryFilter =- UnaryFilter'- { _ufOp = Nothing- , _ufField = Nothing- }+data WriteRequest =+ WriteRequest'+ { _wrStreamToken :: !(Maybe Bytes)+ , _wrLabels :: !(Maybe WriteRequestLabels)+ , _wrWrites :: !(Maybe [Write])+ , _wrStreamId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WriteRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wrStreamToken'+--+-- * 'wrLabels'+--+-- * 'wrWrites'+--+-- * 'wrStreamId'+writeRequest+ :: WriteRequest+writeRequest =+ WriteRequest'+ { _wrStreamToken = Nothing+ , _wrLabels = Nothing+ , _wrWrites = Nothing+ , _wrStreamId = Nothing+ }+++-- | A stream token that was previously sent by the server. The client should+-- set this field to the token from the most recent WriteResponse it has+-- received. This acknowledges that the client has received responses up to+-- this token. After sending this token, earlier tokens may not be used+-- anymore. The server may close the stream if there are too many+-- unacknowledged responses. Leave this field unset when creating a new+-- stream. To resume a stream at a specific point, set this field and the+-- \`stream_id\` field. Leave this field unset when creating a new stream.+wrStreamToken :: Lens' WriteRequest (Maybe ByteString)+wrStreamToken+ = lens _wrStreamToken+ (\ s a -> s{_wrStreamToken = a})+ . mapping _Bytes++-- | Labels associated with this write request.+wrLabels :: Lens' WriteRequest (Maybe WriteRequestLabels)+wrLabels = lens _wrLabels (\ s a -> s{_wrLabels = a})++-- | The writes to apply. Always executed atomically and in order. This must+-- be empty on the first request. This may be empty on the last request.+-- This must not be empty on all other requests.+wrWrites :: Lens' WriteRequest [Write]+wrWrites+ = lens _wrWrites (\ s a -> s{_wrWrites = a}) .+ _Default+ . _Coerce++-- | The ID of the write stream to resume. This may only be set in the first+-- message. When left empty, a new write stream will be created.+wrStreamId :: Lens' WriteRequest (Maybe Text)+wrStreamId+ = lens _wrStreamId (\ s a -> s{_wrStreamId = a})++instance FromJSON WriteRequest where+ parseJSON+ = withObject "WriteRequest"+ (\ o ->+ WriteRequest' <$>+ (o .:? "streamToken") <*> (o .:? "labels") <*>+ (o .:? "writes" .!= mempty)+ <*> (o .:? "streamId"))++instance ToJSON WriteRequest where+ toJSON WriteRequest'{..}+ = object+ (catMaybes+ [("streamToken" .=) <$> _wrStreamToken,+ ("labels" .=) <$> _wrLabels,+ ("writes" .=) <$> _wrWrites,+ ("streamId" .=) <$> _wrStreamId])++-- | An object representing a latitude\/longitude pair. This is expressed as+-- a pair of doubles representing degrees latitude and degrees longitude.+-- Unless specified otherwise, this must conform to the+-- <http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf WGS84 standard>.+-- Values must be within normalized ranges.+--+-- /See:/ 'latLng' smart constructor.+data LatLng =+ LatLng'+ { _llLatitude :: !(Maybe (Textual Double))+ , _llLongitude :: !(Maybe (Textual Double))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'LatLng' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'llLatitude'+--+-- * 'llLongitude'+latLng+ :: LatLng+latLng = LatLng' {_llLatitude = Nothing, _llLongitude = Nothing}+++-- | The latitude in degrees. It must be in the range [-90.0, +90.0].+llLatitude :: Lens' LatLng (Maybe Double)+llLatitude+ = lens _llLatitude (\ s a -> s{_llLatitude = a}) .+ mapping _Coerce++-- | The longitude in degrees. It must be in the range [-180.0, +180.0].+llLongitude :: Lens' LatLng (Maybe Double)+llLongitude+ = lens _llLongitude (\ s a -> s{_llLongitude = a}) .+ mapping _Coerce++instance FromJSON LatLng where+ parseJSON+ = withObject "LatLng"+ (\ o ->+ LatLng' <$>+ (o .:? "latitude") <*> (o .:? "longitude"))++instance ToJSON LatLng where+ toJSON LatLng'{..}+ = object+ (catMaybes+ [("latitude" .=) <$> _llLatitude,+ ("longitude" .=) <$> _llLongitude])++-- | The result of applying a write.+--+-- /See:/ 'writeResult' smart constructor.+data WriteResult =+ WriteResult'+ { _wrUpdateTime :: !(Maybe DateTime')+ , _wrTransformResults :: !(Maybe [Value])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WriteResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wrUpdateTime'+--+-- * 'wrTransformResults'+writeResult+ :: WriteResult+writeResult =+ WriteResult' {_wrUpdateTime = Nothing, _wrTransformResults = Nothing}+++-- | The last update time of the document after applying the write. Not set+-- after a \`delete\`. If the write did not actually change the document,+-- this will be the previous update_time.+wrUpdateTime :: Lens' WriteResult (Maybe UTCTime)+wrUpdateTime+ = lens _wrUpdateTime (\ s a -> s{_wrUpdateTime = a})+ . mapping _DateTime++-- | The results of applying each DocumentTransform.FieldTransform, in the+-- same order.+wrTransformResults :: Lens' WriteResult [Value]+wrTransformResults+ = lens _wrTransformResults+ (\ s a -> s{_wrTransformResults = a})+ . _Default+ . _Coerce++instance FromJSON WriteResult where+ parseJSON+ = withObject "WriteResult"+ (\ o ->+ WriteResult' <$>+ (o .:? "updateTime") <*>+ (o .:? "transformResults" .!= mempty))++instance ToJSON WriteResult where+ toJSON WriteResult'{..}+ = object+ (catMaybes+ [("updateTime" .=) <$> _wrUpdateTime,+ ("transformResults" .=) <$> _wrTransformResults])++-- | Represents a single field in the database. Fields are grouped by their+-- \"Collection Group\", which represent all collections in the database+-- with the same id.+--+-- /See:/ 'googleFirestoreAdminV1Field' smart constructor.+data GoogleFirestoreAdminV1Field =+ GoogleFirestoreAdminV1Field'+ { _gfavfIndexConfig :: !(Maybe GoogleFirestoreAdminV1IndexConfig)+ , _gfavfName :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1Field' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavfIndexConfig'+--+-- * 'gfavfName'+googleFirestoreAdminV1Field+ :: GoogleFirestoreAdminV1Field+googleFirestoreAdminV1Field =+ GoogleFirestoreAdminV1Field'+ {_gfavfIndexConfig = Nothing, _gfavfName = Nothing}+++-- | The index configuration for this field. If unset, field indexing will+-- revert to the configuration defined by the \`ancestor_field\`. To+-- explicitly remove all indexes for this field, specify an index config+-- with an empty list of indexes.+gfavfIndexConfig :: Lens' GoogleFirestoreAdminV1Field (Maybe GoogleFirestoreAdminV1IndexConfig)+gfavfIndexConfig+ = lens _gfavfIndexConfig+ (\ s a -> s{_gfavfIndexConfig = a})++-- | A field name of the form+-- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/fields\/{field_path}\`+-- A field path may be a simple field name, e.g. \`address\` or a path to+-- fields within map_value , e.g. \`address.city\`, or a special field+-- path. The only valid special field is \`*\`, which represents any field.+-- Field paths may be quoted using \` (backtick). The only character that+-- needs to be escaped within a quoted field path is the backtick character+-- itself, escaped using a backslash. Special characters in field paths+-- that must be quoted include: \`*\`, \`.\`, \`\`\` (backtick), \`[\`,+-- \`]\`, as well as any ascii symbolic characters. Examples: (Note:+-- Comments here are written in markdown syntax, so there is an additional+-- layer of backticks to represent a code block) \`\\\`address.city\\\`\`+-- represents a field named \`address.city\`, not the map key \`city\` in+-- the field \`address\`. \`\\\`*\\\`\` represents a field named \`*\`, not+-- any field. A special \`Field\` contains the default indexing settings+-- for all fields. This field\'s resource name is:+-- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/__default__\/fields\/*\`+-- Indexes defined on this \`Field\` will be applied to all fields which do+-- not have their own \`Field\` index configuration.+gfavfName :: Lens' GoogleFirestoreAdminV1Field (Maybe Text)+gfavfName+ = lens _gfavfName (\ s a -> s{_gfavfName = a})++instance FromJSON GoogleFirestoreAdminV1Field where+ parseJSON+ = withObject "GoogleFirestoreAdminV1Field"+ (\ o ->+ GoogleFirestoreAdminV1Field' <$>+ (o .:? "indexConfig") <*> (o .:? "name"))++instance ToJSON GoogleFirestoreAdminV1Field where+ toJSON GoogleFirestoreAdminV1Field'{..}+ = object+ (catMaybes+ [("indexConfig" .=) <$> _gfavfIndexConfig,+ ("name" .=) <$> _gfavfName])++-- | Options for creating a new transaction.+--+-- /See:/ 'transactionOptions' smart constructor.+data TransactionOptions =+ TransactionOptions'+ { _toReadWrite :: !(Maybe ReadWrite)+ , _toReadOnly :: !(Maybe ReadOnly)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'TransactionOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'toReadWrite'+--+-- * 'toReadOnly'+transactionOptions+ :: TransactionOptions+transactionOptions =+ TransactionOptions' {_toReadWrite = Nothing, _toReadOnly = Nothing}+++-- | The transaction can be used for both read and write operations.+toReadWrite :: Lens' TransactionOptions (Maybe ReadWrite)+toReadWrite+ = lens _toReadWrite (\ s a -> s{_toReadWrite = a})++-- | The transaction can only be used for read operations.+toReadOnly :: Lens' TransactionOptions (Maybe ReadOnly)+toReadOnly+ = lens _toReadOnly (\ s a -> s{_toReadOnly = a})++instance FromJSON TransactionOptions where+ parseJSON+ = withObject "TransactionOptions"+ (\ o ->+ TransactionOptions' <$>+ (o .:? "readWrite") <*> (o .:? "readOnly"))++instance ToJSON TransactionOptions where+ toJSON TransactionOptions'{..}+ = object+ (catMaybes+ [("readWrite" .=) <$> _toReadWrite,+ ("readOnly" .=) <$> _toReadOnly])++-- | The \`Status\` type defines a logical error model that is suitable for+-- different programming environments, including REST APIs and RPC APIs. It+-- is used by [gRPC](https:\/\/github.com\/grpc). The error model is+-- designed to be: - Simple to use and understand for most users - Flexible+-- enough to meet unexpected needs # Overview The \`Status\` message+-- contains three pieces of data: error code, error message, and error+-- details. The error code should be an enum value of google.rpc.Code, but+-- it may accept additional error codes if needed. The error message should+-- be a developer-facing English message that helps developers *understand*+-- and *resolve* the error. If a localized user-facing error message is+-- needed, put the localized message in the error details or localize it in+-- the client. The optional error details may contain arbitrary information+-- about the error. There is a predefined set of error detail types in the+-- package \`google.rpc\` that can be used for common error conditions. #+-- Language mapping The \`Status\` message is the logical representation of+-- the error model, but it is not necessarily the actual wire format. When+-- the \`Status\` message is exposed in different client libraries and+-- different wire protocols, it can be mapped differently. For example, it+-- will likely be mapped to some exceptions in Java, but more likely mapped+-- to some error codes in C. # Other uses The error model and the+-- \`Status\` message can be used in a variety of environments, either with+-- or without APIs, to provide a consistent developer experience across+-- different environments. Example uses of this error model include: -+-- Partial errors. If a service needs to return partial errors to the+-- client, it may embed the \`Status\` in the normal response to indicate+-- the partial errors. - Workflow errors. A typical workflow has multiple+-- steps. Each step may have a \`Status\` message for error reporting. -+-- Batch operations. If a client uses batch request and batch response, the+-- \`Status\` message should be used directly inside batch response, one+-- for each error sub-response. - Asynchronous operations. If an API call+-- embeds asynchronous operation results in its response, the status of+-- those operations should be represented directly using the \`Status\`+-- message. - Logging. If some API errors are stored in logs, the message+-- \`Status\` could be used directly after any stripping needed for+-- security\/privacy reasons.+--+-- /See:/ 'status' smart constructor.+data Status =+ Status'+ { _sDetails :: !(Maybe [StatusDetailsItem])+ , _sCode :: !(Maybe (Textual Int32))+ , _sMessage :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Status' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sDetails'+--+-- * 'sCode'+--+-- * 'sMessage'+status+ :: Status+status = Status' {_sDetails = Nothing, _sCode = Nothing, _sMessage = Nothing}+++-- | A list of messages that carry the error details. There is a common set+-- of message types for APIs to use.+sDetails :: Lens' Status [StatusDetailsItem]+sDetails+ = lens _sDetails (\ s a -> s{_sDetails = a}) .+ _Default+ . _Coerce++-- | The status code, which should be an enum value of google.rpc.Code.+sCode :: Lens' Status (Maybe Int32)+sCode+ = lens _sCode (\ s a -> s{_sCode = a}) .+ mapping _Coerce++-- | A developer-facing error message, which should be in English. Any+-- user-facing error message should be localized and sent in the+-- google.rpc.Status.details field, or localized by the client.+sMessage :: Lens' Status (Maybe Text)+sMessage = lens _sMessage (\ s a -> s{_sMessage = a})++instance FromJSON Status where+ parseJSON+ = withObject "Status"+ (\ o ->+ Status' <$>+ (o .:? "details" .!= mempty) <*> (o .:? "code") <*>+ (o .:? "message"))++instance ToJSON Status where+ toJSON Status'{..}+ = object+ (catMaybes+ [("details" .=) <$> _sDetails,+ ("code" .=) <$> _sCode,+ ("message" .=) <$> _sMessage])++-- | Service-specific metadata associated with the operation. It typically+-- contains progress information and common metadata such as create time.+-- Some services might not provide such metadata. Any method that returns a+-- long-running operation should document the metadata type, if any.+--+-- /See:/ 'googleLongrunningOperationMetadata' smart constructor.+newtype GoogleLongrunningOperationMetadata =+ GoogleLongrunningOperationMetadata'+ { _glomAddtional :: HashMap Text JSONValue+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleLongrunningOperationMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'glomAddtional'+googleLongrunningOperationMetadata+ :: HashMap Text JSONValue -- ^ 'glomAddtional'+ -> GoogleLongrunningOperationMetadata+googleLongrunningOperationMetadata pGlomAddtional_ =+ GoogleLongrunningOperationMetadata'+ {_glomAddtional = _Coerce # pGlomAddtional_}+++-- | Properties of the object. Contains field \'type with type URL.+glomAddtional :: Lens' GoogleLongrunningOperationMetadata (HashMap Text JSONValue)+glomAddtional+ = lens _glomAddtional+ (\ s a -> s{_glomAddtional = a})+ . _Coerce++instance FromJSON GoogleLongrunningOperationMetadata+ where+ parseJSON+ = withObject "GoogleLongrunningOperationMetadata"+ (\ o ->+ GoogleLongrunningOperationMetadata' <$>+ (parseJSONObject o))++instance ToJSON GoogleLongrunningOperationMetadata+ where+ toJSON = toJSON . _glomAddtional++-- | A precondition on a document, used for conditional operations.+--+-- /See:/ 'precondition' smart constructor.+data Precondition =+ Precondition'+ { _pExists :: !(Maybe Bool)+ , _pUpdateTime :: !(Maybe DateTime')+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Precondition' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pExists'+--+-- * 'pUpdateTime'+precondition+ :: Precondition+precondition = Precondition' {_pExists = Nothing, _pUpdateTime = Nothing}+++-- | When set to \`true\`, the target document must exist. When set to+-- \`false\`, the target document must not exist.+pExists :: Lens' Precondition (Maybe Bool)+pExists = lens _pExists (\ s a -> s{_pExists = a})++-- | When set, the target document must exist and have been last updated at+-- that time.+pUpdateTime :: Lens' Precondition (Maybe UTCTime)+pUpdateTime+ = lens _pUpdateTime (\ s a -> s{_pUpdateTime = a}) .+ mapping _DateTime++instance FromJSON Precondition where+ parseJSON+ = withObject "Precondition"+ (\ o ->+ Precondition' <$>+ (o .:? "exists") <*> (o .:? "updateTime"))++instance ToJSON Precondition where+ toJSON Precondition'{..}+ = object+ (catMaybes+ [("exists" .=) <$> _pExists,+ ("updateTime" .=) <$> _pUpdateTime])++-- | Options for a transaction that can be used to read and write documents.+--+-- /See:/ 'readWrite' smart constructor.+newtype ReadWrite =+ ReadWrite'+ { _rwRetryTransaction :: Maybe Bytes+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ReadWrite' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rwRetryTransaction'+readWrite+ :: ReadWrite+readWrite = ReadWrite' {_rwRetryTransaction = Nothing}+++-- | An optional transaction to retry.+rwRetryTransaction :: Lens' ReadWrite (Maybe ByteString)+rwRetryTransaction+ = lens _rwRetryTransaction+ (\ s a -> s{_rwRetryTransaction = a})+ . mapping _Bytes++instance FromJSON ReadWrite where+ parseJSON+ = withObject "ReadWrite"+ (\ o -> ReadWrite' <$> (o .:? "retryTransaction"))++instance ToJSON ReadWrite where+ toJSON ReadWrite'{..}+ = object+ (catMaybes+ [("retryTransaction" .=) <$> _rwRetryTransaction])++-- | The request for Firestore.Rollback.+--+-- /See:/ 'rollbackRequest' smart constructor.+newtype RollbackRequest =+ RollbackRequest'+ { _rrTransaction :: Maybe Bytes+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RollbackRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rrTransaction'+rollbackRequest+ :: RollbackRequest+rollbackRequest = RollbackRequest' {_rrTransaction = Nothing}+++-- | The transaction to roll back.+rrTransaction :: Lens' RollbackRequest (Maybe ByteString)+rrTransaction+ = lens _rrTransaction+ (\ s a -> s{_rrTransaction = a})+ . mapping _Bytes++instance FromJSON RollbackRequest where+ parseJSON+ = withObject "RollbackRequest"+ (\ o -> RollbackRequest' <$> (o .:? "transaction"))++instance ToJSON RollbackRequest where+ toJSON RollbackRequest'{..}+ = object+ (catMaybes [("transaction" .=) <$> _rrTransaction])++-- | The request for FirestoreAdmin.ExportDocuments.+--+-- /See:/ 'googleFirestoreAdminV1ExportDocumentsRequest' smart constructor.+data GoogleFirestoreAdminV1ExportDocumentsRequest =+ GoogleFirestoreAdminV1ExportDocumentsRequest'+ { _gfavedrCollectionIds :: !(Maybe [Text])+ , _gfavedrOutputURIPrefix :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavedrCollectionIds'+--+-- * 'gfavedrOutputURIPrefix'+googleFirestoreAdminV1ExportDocumentsRequest+ :: GoogleFirestoreAdminV1ExportDocumentsRequest+googleFirestoreAdminV1ExportDocumentsRequest =+ GoogleFirestoreAdminV1ExportDocumentsRequest'+ {_gfavedrCollectionIds = Nothing, _gfavedrOutputURIPrefix = Nothing}+++-- | Which collection ids to export. Unspecified means all collections.+gfavedrCollectionIds :: Lens' GoogleFirestoreAdminV1ExportDocumentsRequest [Text]+gfavedrCollectionIds+ = lens _gfavedrCollectionIds+ (\ s a -> s{_gfavedrCollectionIds = a})+ . _Default+ . _Coerce++-- | The output URI. Currently only supports Google Cloud Storage URIs of the+-- form: \`gs:\/\/BUCKET_NAME[\/NAMESPACE_PATH]\`, where \`BUCKET_NAME\` is+-- the name of the Google Cloud Storage bucket and \`NAMESPACE_PATH\` is an+-- optional Google Cloud Storage namespace path. When choosing a name, be+-- sure to consider Google Cloud Storage naming guidelines:+-- https:\/\/cloud.google.com\/storage\/docs\/naming. If the URI is a+-- bucket (without a namespace path), a prefix will be generated based on+-- the start time.+gfavedrOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsRequest (Maybe Text)+gfavedrOutputURIPrefix+ = lens _gfavedrOutputURIPrefix+ (\ s a -> s{_gfavedrOutputURIPrefix = a})++instance FromJSON+ GoogleFirestoreAdminV1ExportDocumentsRequest+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ExportDocumentsRequest"+ (\ o ->+ GoogleFirestoreAdminV1ExportDocumentsRequest' <$>+ (o .:? "collectionIds" .!= mempty) <*>+ (o .:? "outputUriPrefix"))++instance ToJSON+ GoogleFirestoreAdminV1ExportDocumentsRequest+ where+ toJSON+ GoogleFirestoreAdminV1ExportDocumentsRequest'{..}+ = object+ (catMaybes+ [("collectionIds" .=) <$> _gfavedrCollectionIds,+ ("outputUriPrefix" .=) <$> _gfavedrOutputURIPrefix])++-- | Targets being watched have changed.+--+-- /See:/ 'targetChange' smart constructor.+data TargetChange =+ TargetChange'+ { _tcReadTime :: !(Maybe DateTime')+ , _tcResumeToken :: !(Maybe Bytes)+ , _tcCause :: !(Maybe Status)+ , _tcTargetChangeType :: !(Maybe TargetChangeTargetChangeType)+ , _tcTargetIds :: !(Maybe [Textual Int32])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'TargetChange' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tcReadTime'+--+-- * 'tcResumeToken'+--+-- * 'tcCause'+--+-- * 'tcTargetChangeType'+--+-- * 'tcTargetIds'+targetChange+ :: TargetChange+targetChange =+ TargetChange'+ { _tcReadTime = Nothing+ , _tcResumeToken = Nothing+ , _tcCause = Nothing+ , _tcTargetChangeType = Nothing+ , _tcTargetIds = Nothing+ }+++-- | The consistent \`read_time\` for the given \`target_ids\` (omitted when+-- the target_ids are not at a consistent snapshot). The stream is+-- guaranteed to send a \`read_time\` with \`target_ids\` empty whenever+-- the entire stream reaches a new consistent snapshot. ADD, CURRENT, and+-- RESET messages are guaranteed to (eventually) result in a new consistent+-- snapshot (while NO_CHANGE and REMOVE messages are not). For a given+-- stream, \`read_time\` is guaranteed to be monotonically increasing.+tcReadTime :: Lens' TargetChange (Maybe UTCTime)+tcReadTime+ = lens _tcReadTime (\ s a -> s{_tcReadTime = a}) .+ mapping _DateTime++-- | A token that can be used to resume the stream for the given+-- \`target_ids\`, or all targets if \`target_ids\` is empty. Not set on+-- every target change.+tcResumeToken :: Lens' TargetChange (Maybe ByteString)+tcResumeToken+ = lens _tcResumeToken+ (\ s a -> s{_tcResumeToken = a})+ . mapping _Bytes++-- | The error that resulted in this change, if applicable.+tcCause :: Lens' TargetChange (Maybe Status)+tcCause = lens _tcCause (\ s a -> s{_tcCause = a})++-- | The type of change that occurred.+tcTargetChangeType :: Lens' TargetChange (Maybe TargetChangeTargetChangeType)+tcTargetChangeType+ = lens _tcTargetChangeType+ (\ s a -> s{_tcTargetChangeType = a})++-- | The target IDs of targets that have changed. If empty, the change+-- applies to all targets. For \`target_change_type=ADD\`, the order of the+-- target IDs matches the order of the requests to add the targets. This+-- allows clients to unambiguously associate server-assigned target IDs+-- with added targets. For other states, the order of the target IDs is not+-- defined.+tcTargetIds :: Lens' TargetChange [Int32]+tcTargetIds+ = lens _tcTargetIds (\ s a -> s{_tcTargetIds = a}) .+ _Default+ . _Coerce++instance FromJSON TargetChange where+ parseJSON+ = withObject "TargetChange"+ (\ o ->+ TargetChange' <$>+ (o .:? "readTime") <*> (o .:? "resumeToken") <*>+ (o .:? "cause")+ <*> (o .:? "targetChangeType")+ <*> (o .:? "targetIds" .!= mempty))++instance ToJSON TargetChange where+ toJSON TargetChange'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _tcReadTime,+ ("resumeToken" .=) <$> _tcResumeToken,+ ("cause" .=) <$> _tcCause,+ ("targetChangeType" .=) <$> _tcTargetChangeType,+ ("targetIds" .=) <$> _tcTargetIds])++-- | The response message for Locations.ListLocations.+--+-- /See:/ 'listLocationsResponse' smart constructor.+data ListLocationsResponse =+ ListLocationsResponse'+ { _llrNextPageToken :: !(Maybe Text)+ , _llrLocations :: !(Maybe [Location])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListLocationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'llrNextPageToken'+--+-- * 'llrLocations'+listLocationsResponse+ :: ListLocationsResponse+listLocationsResponse =+ ListLocationsResponse' {_llrNextPageToken = Nothing, _llrLocations = Nothing}+++-- | The standard List next-page token.+llrNextPageToken :: Lens' ListLocationsResponse (Maybe Text)+llrNextPageToken+ = lens _llrNextPageToken+ (\ s a -> s{_llrNextPageToken = a})++-- | A list of locations that matches the specified filter in the request.+llrLocations :: Lens' ListLocationsResponse [Location]+llrLocations+ = lens _llrLocations (\ s a -> s{_llrLocations = a})+ . _Default+ . _Coerce++instance FromJSON ListLocationsResponse where+ parseJSON+ = withObject "ListLocationsResponse"+ (\ o ->+ ListLocationsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "locations" .!= mempty))++instance ToJSON ListLocationsResponse where+ toJSON ListLocationsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _llrNextPageToken,+ ("locations" .=) <$> _llrLocations])++-- | A position in a query result set.+--+-- /See:/ 'cursor' smart constructor.+data Cursor =+ Cursor'+ { _cValues :: !(Maybe [Value])+ , _cBefore :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Cursor' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cValues'+--+-- * 'cBefore'+cursor+ :: Cursor+cursor = Cursor' {_cValues = Nothing, _cBefore = Nothing}+++-- | The values that represent a position, in the order they appear in the+-- order by clause of a query. Can contain fewer values than specified in+-- the order by clause.+cValues :: Lens' Cursor [Value]+cValues+ = lens _cValues (\ s a -> s{_cValues = a}) . _Default+ . _Coerce++-- | If the position is just before or just after the given values, relative+-- to the sort order defined by the query.+cBefore :: Lens' Cursor (Maybe Bool)+cBefore = lens _cBefore (\ s a -> s{_cBefore = a})++instance FromJSON Cursor where+ parseJSON+ = withObject "Cursor"+ (\ o ->+ Cursor' <$>+ (o .:? "values" .!= mempty) <*> (o .:? "before"))++instance ToJSON Cursor where+ toJSON Cursor'{..}+ = object+ (catMaybes+ [("values" .=) <$> _cValues,+ ("before" .=) <$> _cBefore])++-- | Metadata for google.longrunning.Operation results from+-- FirestoreAdmin.ImportDocuments.+--+-- /See:/ 'googleFirestoreAdminV1ImportDocumentsMetadata' smart constructor.+data GoogleFirestoreAdminV1ImportDocumentsMetadata =+ GoogleFirestoreAdminV1ImportDocumentsMetadata'+ { _gfavidmProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavidmStartTime :: !(Maybe DateTime')+ , _gfavidmInputURIPrefix :: !(Maybe Text)+ , _gfavidmCollectionIds :: !(Maybe [Text])+ , _gfavidmProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavidmEndTime :: !(Maybe DateTime')+ , _gfavidmOperationState :: !(Maybe GoogleFirestoreAdminV1ImportDocumentsMetadataOperationState)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ImportDocumentsMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavidmProgressBytes'+--+-- * 'gfavidmStartTime'+--+-- * 'gfavidmInputURIPrefix'+--+-- * 'gfavidmCollectionIds'+--+-- * 'gfavidmProgressDocuments'+--+-- * 'gfavidmEndTime'+--+-- * 'gfavidmOperationState'+googleFirestoreAdminV1ImportDocumentsMetadata+ :: GoogleFirestoreAdminV1ImportDocumentsMetadata+googleFirestoreAdminV1ImportDocumentsMetadata =+ GoogleFirestoreAdminV1ImportDocumentsMetadata'+ { _gfavidmProgressBytes = Nothing+ , _gfavidmStartTime = Nothing+ , _gfavidmInputURIPrefix = Nothing+ , _gfavidmCollectionIds = Nothing+ , _gfavidmProgressDocuments = Nothing+ , _gfavidmEndTime = Nothing+ , _gfavidmOperationState = Nothing+ }+++-- | The progress, in bytes, of this operation.+gfavidmProgressBytes :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavidmProgressBytes+ = lens _gfavidmProgressBytes+ (\ s a -> s{_gfavidmProgressBytes = a})++-- | The time this operation started.+gfavidmStartTime :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe UTCTime)+gfavidmStartTime+ = lens _gfavidmStartTime+ (\ s a -> s{_gfavidmStartTime = a})+ . mapping _DateTime++-- | The location of the documents being imported.+gfavidmInputURIPrefix :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe Text)+gfavidmInputURIPrefix+ = lens _gfavidmInputURIPrefix+ (\ s a -> s{_gfavidmInputURIPrefix = a})++-- | Which collection ids are being imported.+gfavidmCollectionIds :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata [Text]+gfavidmCollectionIds+ = lens _gfavidmCollectionIds+ (\ s a -> s{_gfavidmCollectionIds = a})+ . _Default+ . _Coerce++-- | The progress, in documents, of this operation.+gfavidmProgressDocuments :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavidmProgressDocuments+ = lens _gfavidmProgressDocuments+ (\ s a -> s{_gfavidmProgressDocuments = a})++-- | The time this operation completed. Will be unset if operation still in+-- progress.+gfavidmEndTime :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe UTCTime)+gfavidmEndTime+ = lens _gfavidmEndTime+ (\ s a -> s{_gfavidmEndTime = a})+ . mapping _DateTime++-- | The state of the import operation.+gfavidmOperationState :: Lens' GoogleFirestoreAdminV1ImportDocumentsMetadata (Maybe GoogleFirestoreAdminV1ImportDocumentsMetadataOperationState)+gfavidmOperationState+ = lens _gfavidmOperationState+ (\ s a -> s{_gfavidmOperationState = a})++instance FromJSON+ GoogleFirestoreAdminV1ImportDocumentsMetadata+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ImportDocumentsMetadata"+ (\ o ->+ GoogleFirestoreAdminV1ImportDocumentsMetadata' <$>+ (o .:? "progressBytes") <*> (o .:? "startTime") <*>+ (o .:? "inputUriPrefix")+ <*> (o .:? "collectionIds" .!= mempty)+ <*> (o .:? "progressDocuments")+ <*> (o .:? "endTime")+ <*> (o .:? "operationState"))++instance ToJSON+ GoogleFirestoreAdminV1ImportDocumentsMetadata+ where+ toJSON+ GoogleFirestoreAdminV1ImportDocumentsMetadata'{..}+ = object+ (catMaybes+ [("progressBytes" .=) <$> _gfavidmProgressBytes,+ ("startTime" .=) <$> _gfavidmStartTime,+ ("inputUriPrefix" .=) <$> _gfavidmInputURIPrefix,+ ("collectionIds" .=) <$> _gfavidmCollectionIds,+ ("progressDocuments" .=) <$>+ _gfavidmProgressDocuments,+ ("endTime" .=) <$> _gfavidmEndTime,+ ("operationState" .=) <$> _gfavidmOperationState])++-- | The request for Firestore.BeginTransaction.+--+-- /See:/ 'beginTransactionRequest' smart constructor.+newtype BeginTransactionRequest =+ BeginTransactionRequest'+ { _btrOptions :: Maybe TransactionOptions+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BeginTransactionRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'btrOptions'+beginTransactionRequest+ :: BeginTransactionRequest+beginTransactionRequest = BeginTransactionRequest' {_btrOptions = Nothing}+++-- | The options for the transaction. Defaults to a read-write transaction.+btrOptions :: Lens' BeginTransactionRequest (Maybe TransactionOptions)+btrOptions+ = lens _btrOptions (\ s a -> s{_btrOptions = a})++instance FromJSON BeginTransactionRequest where+ parseJSON+ = withObject "BeginTransactionRequest"+ (\ o ->+ BeginTransactionRequest' <$> (o .:? "options"))++instance ToJSON BeginTransactionRequest where+ toJSON BeginTransactionRequest'{..}+ = object (catMaybes [("options" .=) <$> _btrOptions])++-- | The request for Firestore.RunQuery.+--+-- /See:/ 'runQueryRequest' smart constructor.+data RunQueryRequest =+ RunQueryRequest'+ { _rqrReadTime :: !(Maybe DateTime')+ , _rqrNewTransaction :: !(Maybe TransactionOptions)+ , _rqrStructuredQuery :: !(Maybe StructuredQuery)+ , _rqrTransaction :: !(Maybe Bytes)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RunQueryRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rqrReadTime'+--+-- * 'rqrNewTransaction'+--+-- * 'rqrStructuredQuery'+--+-- * 'rqrTransaction'+runQueryRequest+ :: RunQueryRequest+runQueryRequest =+ RunQueryRequest'+ { _rqrReadTime = Nothing+ , _rqrNewTransaction = Nothing+ , _rqrStructuredQuery = Nothing+ , _rqrTransaction = Nothing+ }+++-- | Reads documents as they were at the given time. This may not be older+-- than 60 seconds.+rqrReadTime :: Lens' RunQueryRequest (Maybe UTCTime)+rqrReadTime+ = lens _rqrReadTime (\ s a -> s{_rqrReadTime = a}) .+ mapping _DateTime++-- | Starts a new transaction and reads the documents. Defaults to a+-- read-only transaction. The new transaction ID will be returned as the+-- first response in the stream.+rqrNewTransaction :: Lens' RunQueryRequest (Maybe TransactionOptions)+rqrNewTransaction+ = lens _rqrNewTransaction+ (\ s a -> s{_rqrNewTransaction = a})++-- | A structured query.+rqrStructuredQuery :: Lens' RunQueryRequest (Maybe StructuredQuery)+rqrStructuredQuery+ = lens _rqrStructuredQuery+ (\ s a -> s{_rqrStructuredQuery = a})++-- | Reads documents in a transaction.+rqrTransaction :: Lens' RunQueryRequest (Maybe ByteString)+rqrTransaction+ = lens _rqrTransaction+ (\ s a -> s{_rqrTransaction = a})+ . mapping _Bytes++instance FromJSON RunQueryRequest where+ parseJSON+ = withObject "RunQueryRequest"+ (\ o ->+ RunQueryRequest' <$>+ (o .:? "readTime") <*> (o .:? "newTransaction") <*>+ (o .:? "structuredQuery")+ <*> (o .:? "transaction"))++instance ToJSON RunQueryRequest where+ toJSON RunQueryRequest'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _rqrReadTime,+ ("newTransaction" .=) <$> _rqrNewTransaction,+ ("structuredQuery" .=) <$> _rqrStructuredQuery,+ ("transaction" .=) <$> _rqrTransaction])++-- | Information about an index configuration change.+--+-- /See:/ 'googleFirestoreAdminV1IndexConfigDelta' smart constructor.+data GoogleFirestoreAdminV1IndexConfigDelta =+ GoogleFirestoreAdminV1IndexConfigDelta'+ { _gfavicdIndex :: !(Maybe GoogleFirestoreAdminV1Index)+ , _gfavicdChangeType :: !(Maybe GoogleFirestoreAdminV1IndexConfigDeltaChangeType)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1IndexConfigDelta' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavicdIndex'+--+-- * 'gfavicdChangeType'+googleFirestoreAdminV1IndexConfigDelta+ :: GoogleFirestoreAdminV1IndexConfigDelta+googleFirestoreAdminV1IndexConfigDelta =+ GoogleFirestoreAdminV1IndexConfigDelta'+ {_gfavicdIndex = Nothing, _gfavicdChangeType = Nothing}+++-- | The index being changed.+gfavicdIndex :: Lens' GoogleFirestoreAdminV1IndexConfigDelta (Maybe GoogleFirestoreAdminV1Index)+gfavicdIndex+ = lens _gfavicdIndex (\ s a -> s{_gfavicdIndex = a})++-- | Specifies how the index is changing.+gfavicdChangeType :: Lens' GoogleFirestoreAdminV1IndexConfigDelta (Maybe GoogleFirestoreAdminV1IndexConfigDeltaChangeType)+gfavicdChangeType+ = lens _gfavicdChangeType+ (\ s a -> s{_gfavicdChangeType = a})++instance FromJSON+ GoogleFirestoreAdminV1IndexConfigDelta+ where+ parseJSON+ = withObject "GoogleFirestoreAdminV1IndexConfigDelta"+ (\ o ->+ GoogleFirestoreAdminV1IndexConfigDelta' <$>+ (o .:? "index") <*> (o .:? "changeType"))++instance ToJSON+ GoogleFirestoreAdminV1IndexConfigDelta+ where+ toJSON GoogleFirestoreAdminV1IndexConfigDelta'{..}+ = object+ (catMaybes+ [("index" .=) <$> _gfavicdIndex,+ ("changeType" .=) <$> _gfavicdChangeType])++-- | The index configuration for this field.+--+-- /See:/ 'googleFirestoreAdminV1IndexConfig' smart constructor.+data GoogleFirestoreAdminV1IndexConfig =+ GoogleFirestoreAdminV1IndexConfig'+ { _gfavicAncestorField :: !(Maybe Text)+ , _gfavicReverting :: !(Maybe Bool)+ , _gfavicIndexes :: !(Maybe [GoogleFirestoreAdminV1Index])+ , _gfavicUsesAncestorConfig :: !(Maybe Bool)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1IndexConfig' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavicAncestorField'+--+-- * 'gfavicReverting'+--+-- * 'gfavicIndexes'+--+-- * 'gfavicUsesAncestorConfig'+googleFirestoreAdminV1IndexConfig+ :: GoogleFirestoreAdminV1IndexConfig+googleFirestoreAdminV1IndexConfig =+ GoogleFirestoreAdminV1IndexConfig'+ { _gfavicAncestorField = Nothing+ , _gfavicReverting = Nothing+ , _gfavicIndexes = Nothing+ , _gfavicUsesAncestorConfig = Nothing+ }+++-- | Output only. Specifies the resource name of the \`Field\` from which+-- this field\'s index configuration is set (when \`uses_ancestor_config\`+-- is true), or from which it *would* be set if this field had no index+-- configuration (when \`uses_ancestor_config\` is false).+gfavicAncestorField :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Text)+gfavicAncestorField+ = lens _gfavicAncestorField+ (\ s a -> s{_gfavicAncestorField = a})++-- | Output only When true, the \`Field\`\'s index configuration is in the+-- process of being reverted. Once complete, the index config will+-- transition to the same state as the field specified by+-- \`ancestor_field\`, at which point \`uses_ancestor_config\` will be+-- \`true\` and \`reverting\` will be \`false\`.+gfavicReverting :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Bool)+gfavicReverting+ = lens _gfavicReverting+ (\ s a -> s{_gfavicReverting = a})++-- | The indexes supported for this field.+gfavicIndexes :: Lens' GoogleFirestoreAdminV1IndexConfig [GoogleFirestoreAdminV1Index]+gfavicIndexes+ = lens _gfavicIndexes+ (\ s a -> s{_gfavicIndexes = a})+ . _Default+ . _Coerce++-- | Output only. When true, the \`Field\`\'s index configuration is set from+-- the configuration specified by the \`ancestor_field\`. When false, the+-- \`Field\`\'s index configuration is defined explicitly.+gfavicUsesAncestorConfig :: Lens' GoogleFirestoreAdminV1IndexConfig (Maybe Bool)+gfavicUsesAncestorConfig+ = lens _gfavicUsesAncestorConfig+ (\ s a -> s{_gfavicUsesAncestorConfig = a})++instance FromJSON GoogleFirestoreAdminV1IndexConfig+ where+ parseJSON+ = withObject "GoogleFirestoreAdminV1IndexConfig"+ (\ o ->+ GoogleFirestoreAdminV1IndexConfig' <$>+ (o .:? "ancestorField") <*> (o .:? "reverting") <*>+ (o .:? "indexes" .!= mempty)+ <*> (o .:? "usesAncestorConfig"))++instance ToJSON GoogleFirestoreAdminV1IndexConfig+ where+ toJSON GoogleFirestoreAdminV1IndexConfig'{..}+ = object+ (catMaybes+ [("ancestorField" .=) <$> _gfavicAncestorField,+ ("reverting" .=) <$> _gfavicReverting,+ ("indexes" .=) <$> _gfavicIndexes,+ ("usesAncestorConfig" .=) <$>+ _gfavicUsesAncestorConfig])++-- | A field in an index. The field_path describes which field is indexed,+-- the value_mode describes how the field value is indexed.+--+-- /See:/ 'googleFirestoreAdminV1IndexField' smart constructor.+data GoogleFirestoreAdminV1IndexField =+ GoogleFirestoreAdminV1IndexField'+ { _gfavifFieldPath :: !(Maybe Text)+ , _gfavifArrayConfig :: !(Maybe GoogleFirestoreAdminV1IndexFieldArrayConfig)+ , _gfavifOrder :: !(Maybe GoogleFirestoreAdminV1IndexFieldOrder)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1IndexField' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavifFieldPath'+--+-- * 'gfavifArrayConfig'+--+-- * 'gfavifOrder'+googleFirestoreAdminV1IndexField+ :: GoogleFirestoreAdminV1IndexField+googleFirestoreAdminV1IndexField =+ GoogleFirestoreAdminV1IndexField'+ { _gfavifFieldPath = Nothing+ , _gfavifArrayConfig = Nothing+ , _gfavifOrder = Nothing+ }+++-- | Can be __name__. For single field indexes, this must match the name of+-- the field or may be omitted.+gfavifFieldPath :: Lens' GoogleFirestoreAdminV1IndexField (Maybe Text)+gfavifFieldPath+ = lens _gfavifFieldPath+ (\ s a -> s{_gfavifFieldPath = a})++-- | Indicates that this field supports operations on \`array_value\`s.+gfavifArrayConfig :: Lens' GoogleFirestoreAdminV1IndexField (Maybe GoogleFirestoreAdminV1IndexFieldArrayConfig)+gfavifArrayConfig+ = lens _gfavifArrayConfig+ (\ s a -> s{_gfavifArrayConfig = a})++-- | Indicates that this field supports ordering by the specified order or+-- comparing using =, \<, \<=, >, >=.+gfavifOrder :: Lens' GoogleFirestoreAdminV1IndexField (Maybe GoogleFirestoreAdminV1IndexFieldOrder)+gfavifOrder+ = lens _gfavifOrder (\ s a -> s{_gfavifOrder = a})++instance FromJSON GoogleFirestoreAdminV1IndexField+ where+ parseJSON+ = withObject "GoogleFirestoreAdminV1IndexField"+ (\ o ->+ GoogleFirestoreAdminV1IndexField' <$>+ (o .:? "fieldPath") <*> (o .:? "arrayConfig") <*>+ (o .:? "order"))++instance ToJSON GoogleFirestoreAdminV1IndexField+ where+ toJSON GoogleFirestoreAdminV1IndexField'{..}+ = object+ (catMaybes+ [("fieldPath" .=) <$> _gfavifFieldPath,+ ("arrayConfig" .=) <$> _gfavifArrayConfig,+ ("order" .=) <$> _gfavifOrder])++-- | A write on a document.+--+-- /See:/ 'write' smart constructor.+data Write =+ Write'+ { _wTransform :: !(Maybe DocumentTransform)+ , _wUpdateMask :: !(Maybe DocumentMask)+ , _wCurrentDocument :: !(Maybe Precondition)+ , _wDelete :: !(Maybe Text)+ , _wUpdate :: !(Maybe Document)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Write' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wTransform'+--+-- * 'wUpdateMask'+--+-- * 'wCurrentDocument'+--+-- * 'wDelete'+--+-- * 'wUpdate'+write+ :: Write+write =+ Write'+ { _wTransform = Nothing+ , _wUpdateMask = Nothing+ , _wCurrentDocument = Nothing+ , _wDelete = Nothing+ , _wUpdate = Nothing+ }+++-- | Applies a transformation to a document. At most one \`transform\` per+-- document is allowed in a given request. An \`update\` cannot follow a+-- \`transform\` on the same document in a given request.+wTransform :: Lens' Write (Maybe DocumentTransform)+wTransform+ = lens _wTransform (\ s a -> s{_wTransform = a})++-- | The fields to update in this write. This field can be set only when the+-- operation is \`update\`. If the mask is not set for an \`update\` and+-- the document exists, any existing data will be overwritten. If the mask+-- is set and the document on the server has fields not covered by the+-- mask, they are left unchanged. Fields referenced in the mask, but not+-- present in the input document, are deleted from the document on the+-- server. The field paths in this mask must not contain a reserved field+-- name.+wUpdateMask :: Lens' Write (Maybe DocumentMask)+wUpdateMask+ = lens _wUpdateMask (\ s a -> s{_wUpdateMask = a})++-- | An optional precondition on the document. The write will fail if this is+-- set and not met by the target document.+wCurrentDocument :: Lens' Write (Maybe Precondition)+wCurrentDocument+ = lens _wCurrentDocument+ (\ s a -> s{_wCurrentDocument = a})++-- | A document name to delete. In the format:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+wDelete :: Lens' Write (Maybe Text)+wDelete = lens _wDelete (\ s a -> s{_wDelete = a})++-- | A document to write.+wUpdate :: Lens' Write (Maybe Document)+wUpdate = lens _wUpdate (\ s a -> s{_wUpdate = a})++instance FromJSON Write where+ parseJSON+ = withObject "Write"+ (\ o ->+ Write' <$>+ (o .:? "transform") <*> (o .:? "updateMask") <*>+ (o .:? "currentDocument")+ <*> (o .:? "delete")+ <*> (o .:? "update"))++instance ToJSON Write where+ toJSON Write'{..}+ = object+ (catMaybes+ [("transform" .=) <$> _wTransform,+ ("updateMask" .=) <$> _wUpdateMask,+ ("currentDocument" .=) <$> _wCurrentDocument,+ ("delete" .=) <$> _wDelete,+ ("update" .=) <$> _wUpdate])++-- | A resource that represents Google Cloud Platform location.+--+-- /See:/ 'location' smart constructor.+data Location =+ Location'+ { _lName :: !(Maybe Text)+ , _lMetadata :: !(Maybe LocationMetadata)+ , _lDisplayName :: !(Maybe Text)+ , _lLabels :: !(Maybe LocationLabels)+ , _lLocationId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Location' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lName'+--+-- * 'lMetadata'+--+-- * 'lDisplayName'+--+-- * 'lLabels'+--+-- * 'lLocationId'+location+ :: Location+location =+ Location'+ { _lName = Nothing+ , _lMetadata = Nothing+ , _lDisplayName = Nothing+ , _lLabels = Nothing+ , _lLocationId = Nothing+ }+++-- | Resource name for the location, which may vary between implementations.+-- For example: \`\"projects\/example-project\/locations\/us-east1\"\`+lName :: Lens' Location (Maybe Text)+lName = lens _lName (\ s a -> s{_lName = a})++-- | Service-specific metadata. For example the available capacity at the+-- given location.+lMetadata :: Lens' Location (Maybe LocationMetadata)+lMetadata+ = lens _lMetadata (\ s a -> s{_lMetadata = a})++-- | The friendly name for this location, typically a nearby city name. For+-- example, \"Tokyo\".+lDisplayName :: Lens' Location (Maybe Text)+lDisplayName+ = lens _lDisplayName (\ s a -> s{_lDisplayName = a})++-- | Cross-service attributes for the location. For example+-- {\"cloud.googleapis.com\/region\": \"us-east1\"}+lLabels :: Lens' Location (Maybe LocationLabels)+lLabels = lens _lLabels (\ s a -> s{_lLabels = a})++-- | The canonical id for this location. For example: \`\"us-east1\"\`.+lLocationId :: Lens' Location (Maybe Text)+lLocationId+ = lens _lLocationId (\ s a -> s{_lLocationId = a})++instance FromJSON Location where+ parseJSON+ = withObject "Location"+ (\ o ->+ Location' <$>+ (o .:? "name") <*> (o .:? "metadata") <*>+ (o .:? "displayName")+ <*> (o .:? "labels")+ <*> (o .:? "locationId"))++instance ToJSON Location where+ toJSON Location'{..}+ = object+ (catMaybes+ [("name" .=) <$> _lName,+ ("metadata" .=) <$> _lMetadata,+ ("displayName" .=) <$> _lDisplayName,+ ("labels" .=) <$> _lLabels,+ ("locationId" .=) <$> _lLocationId])++-- | A generic empty message that you can re-use to avoid defining duplicated+-- empty messages in your APIs. A typical example is to use it as the+-- request or the response type of an API method. For instance: service Foo+-- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The+-- JSON representation for \`Empty\` is empty JSON object \`{}\`.+--+-- /See:/ 'empty' smart constructor.+data Empty =+ Empty'+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Empty' with the minimum fields required to make a request.+--+empty+ :: Empty+empty = Empty'+++instance FromJSON Empty where+ parseJSON = withObject "Empty" (\ o -> pure Empty')++instance ToJSON Empty where+ toJSON = const emptyObject++-- | The streamed response for Firestore.BatchGetDocuments.+--+-- /See:/ 'batchGetDocumentsResponse' smart constructor.+data BatchGetDocumentsResponse =+ BatchGetDocumentsResponse'+ { _bgdrReadTime :: !(Maybe DateTime')+ , _bgdrFound :: !(Maybe Document)+ , _bgdrTransaction :: !(Maybe Bytes)+ , _bgdrMissing :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BatchGetDocumentsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bgdrReadTime'+--+-- * 'bgdrFound'+--+-- * 'bgdrTransaction'+--+-- * 'bgdrMissing'+batchGetDocumentsResponse+ :: BatchGetDocumentsResponse+batchGetDocumentsResponse =+ BatchGetDocumentsResponse'+ { _bgdrReadTime = Nothing+ , _bgdrFound = Nothing+ , _bgdrTransaction = Nothing+ , _bgdrMissing = Nothing+ }+++-- | The time at which the document was read. This may be monotically+-- increasing, in this case the previous documents in the result stream are+-- guaranteed not to have changed between their read_time and this one.+bgdrReadTime :: Lens' BatchGetDocumentsResponse (Maybe UTCTime)+bgdrReadTime+ = lens _bgdrReadTime (\ s a -> s{_bgdrReadTime = a})+ . mapping _DateTime++-- | A document that was requested.+bgdrFound :: Lens' BatchGetDocumentsResponse (Maybe Document)+bgdrFound+ = lens _bgdrFound (\ s a -> s{_bgdrFound = a})++-- | The transaction that was started as part of this request. Will only be+-- set in the first response, and only if+-- BatchGetDocumentsRequest.new_transaction was set in the request.+bgdrTransaction :: Lens' BatchGetDocumentsResponse (Maybe ByteString)+bgdrTransaction+ = lens _bgdrTransaction+ (\ s a -> s{_bgdrTransaction = a})+ . mapping _Bytes++-- | A document name that was requested but does not exist. In the format:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+bgdrMissing :: Lens' BatchGetDocumentsResponse (Maybe Text)+bgdrMissing+ = lens _bgdrMissing (\ s a -> s{_bgdrMissing = a})++instance FromJSON BatchGetDocumentsResponse where+ parseJSON+ = withObject "BatchGetDocumentsResponse"+ (\ o ->+ BatchGetDocumentsResponse' <$>+ (o .:? "readTime") <*> (o .:? "found") <*>+ (o .:? "transaction")+ <*> (o .:? "missing"))++instance ToJSON BatchGetDocumentsResponse where+ toJSON BatchGetDocumentsResponse'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _bgdrReadTime,+ ("found" .=) <$> _bgdrFound,+ ("transaction" .=) <$> _bgdrTransaction,+ ("missing" .=) <$> _bgdrMissing])++-- | A filter that merges multiple other filters using the given operator.+--+-- /See:/ 'compositeFilter' smart constructor.+data CompositeFilter =+ CompositeFilter'+ { _cfOp :: !(Maybe CompositeFilterOp)+ , _cfFilters :: !(Maybe [Filter])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CompositeFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cfOp'+--+-- * 'cfFilters'+compositeFilter+ :: CompositeFilter+compositeFilter = CompositeFilter' {_cfOp = Nothing, _cfFilters = Nothing}+++-- | The operator for combining multiple filters.+cfOp :: Lens' CompositeFilter (Maybe CompositeFilterOp)+cfOp = lens _cfOp (\ s a -> s{_cfOp = a})++-- | The list of filters to combine. Must contain at least one filter.+cfFilters :: Lens' CompositeFilter [Filter]+cfFilters+ = lens _cfFilters (\ s a -> s{_cfFilters = a}) .+ _Default+ . _Coerce++instance FromJSON CompositeFilter where+ parseJSON+ = withObject "CompositeFilter"+ (\ o ->+ CompositeFilter' <$>+ (o .:? "op") <*> (o .:? "filters" .!= mempty))++instance ToJSON CompositeFilter where+ toJSON CompositeFilter'{..}+ = object+ (catMaybes+ [("op" .=) <$> _cfOp, ("filters" .=) <$> _cfFilters])++-- | A target specified by a set of documents names.+--+-- /See:/ 'documentsTarget' smart constructor.+newtype DocumentsTarget =+ DocumentsTarget'+ { _dtDocuments :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentsTarget' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtDocuments'+documentsTarget+ :: DocumentsTarget+documentsTarget = DocumentsTarget' {_dtDocuments = Nothing}+++-- | The names of the documents to retrieve. In the format:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+-- The request will fail if any of the document is not a child resource of+-- the given \`database\`. Duplicate names will be elided.+dtDocuments :: Lens' DocumentsTarget [Text]+dtDocuments+ = lens _dtDocuments (\ s a -> s{_dtDocuments = a}) .+ _Default+ . _Coerce++instance FromJSON DocumentsTarget where+ parseJSON+ = withObject "DocumentsTarget"+ (\ o ->+ DocumentsTarget' <$> (o .:? "documents" .!= mempty))++instance ToJSON DocumentsTarget where+ toJSON DocumentsTarget'{..}+ = object+ (catMaybes [("documents" .=) <$> _dtDocuments])++-- | Labels associated with this target change.+--+-- /See:/ 'listenRequestLabels' smart constructor.+newtype ListenRequestLabels =+ ListenRequestLabels'+ { _lrlAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListenRequestLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrlAddtional'+listenRequestLabels+ :: HashMap Text Text -- ^ 'lrlAddtional'+ -> ListenRequestLabels+listenRequestLabels pLrlAddtional_ =+ ListenRequestLabels' {_lrlAddtional = _Coerce # pLrlAddtional_}+++lrlAddtional :: Lens' ListenRequestLabels (HashMap Text Text)+lrlAddtional+ = lens _lrlAddtional (\ s a -> s{_lrlAddtional = a})+ . _Coerce++instance FromJSON ListenRequestLabels where+ parseJSON+ = withObject "ListenRequestLabels"+ (\ o -> ListenRequestLabels' <$> (parseJSONObject o))++instance ToJSON ListenRequestLabels where+ toJSON = toJSON . _lrlAddtional++-- | Cloud Firestore indexes enable simple and complex queries against+-- documents in a database.+--+-- /See:/ 'googleFirestoreAdminV1Index' smart constructor.+data GoogleFirestoreAdminV1Index =+ GoogleFirestoreAdminV1Index'+ { _gfaviState :: !(Maybe GoogleFirestoreAdminV1IndexState)+ , _gfaviQueryScope :: !(Maybe GoogleFirestoreAdminV1IndexQueryScope)+ , _gfaviName :: !(Maybe Text)+ , _gfaviFields :: !(Maybe [GoogleFirestoreAdminV1IndexField])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1Index' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfaviState'+--+-- * 'gfaviQueryScope'+--+-- * 'gfaviName'+--+-- * 'gfaviFields'+googleFirestoreAdminV1Index+ :: GoogleFirestoreAdminV1Index+googleFirestoreAdminV1Index =+ GoogleFirestoreAdminV1Index'+ { _gfaviState = Nothing+ , _gfaviQueryScope = Nothing+ , _gfaviName = Nothing+ , _gfaviFields = Nothing+ }+++-- | Output only. The serving state of the index.+gfaviState :: Lens' GoogleFirestoreAdminV1Index (Maybe GoogleFirestoreAdminV1IndexState)+gfaviState+ = lens _gfaviState (\ s a -> s{_gfaviState = a})++-- | Indexes with a collection query scope specified allow queries against a+-- collection that is the child of a specific document, specified at query+-- time, and that has the same collection id. Indexes with a collection+-- group query scope specified allow queries against all collections+-- descended from a specific document, specified at query time, and that+-- have the same collection id as this index.+gfaviQueryScope :: Lens' GoogleFirestoreAdminV1Index (Maybe GoogleFirestoreAdminV1IndexQueryScope)+gfaviQueryScope+ = lens _gfaviQueryScope+ (\ s a -> s{_gfaviQueryScope = a})++-- | Output only. A server defined name for this index. The form of this name+-- for composite indexes will be:+-- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/indexes\/{composite_index_id}\`+-- For single field indexes, this field will be empty.+gfaviName :: Lens' GoogleFirestoreAdminV1Index (Maybe Text)+gfaviName+ = lens _gfaviName (\ s a -> s{_gfaviName = a})++-- | The fields supported by this index. For composite indexes, this is+-- always 2 or more fields. The last field entry is always for the field+-- path \`__name__\`. If, on creation, \`__name__\` was not specified as+-- the last field, it will be added automatically with the same direction+-- as that of the last field defined. If the final field in a composite+-- index is not directional, the \`__name__\` will be ordered ASCENDING+-- (unless explicitly specified). For single field indexes, this will+-- always be exactly one entry with a field path equal to the field path of+-- the associated field.+gfaviFields :: Lens' GoogleFirestoreAdminV1Index [GoogleFirestoreAdminV1IndexField]+gfaviFields+ = lens _gfaviFields (\ s a -> s{_gfaviFields = a}) .+ _Default+ . _Coerce++instance FromJSON GoogleFirestoreAdminV1Index where+ parseJSON+ = withObject "GoogleFirestoreAdminV1Index"+ (\ o ->+ GoogleFirestoreAdminV1Index' <$>+ (o .:? "state") <*> (o .:? "queryScope") <*>+ (o .:? "name")+ <*> (o .:? "fields" .!= mempty))++instance ToJSON GoogleFirestoreAdminV1Index where+ toJSON GoogleFirestoreAdminV1Index'{..}+ = object+ (catMaybes+ [("state" .=) <$> _gfaviState,+ ("queryScope" .=) <$> _gfaviQueryScope,+ ("name" .=) <$> _gfaviName,+ ("fields" .=) <$> _gfaviFields])++-- | The response for Firestore.BeginTransaction.+--+-- /See:/ 'beginTransactionResponse' smart constructor.+newtype BeginTransactionResponse =+ BeginTransactionResponse'+ { _btrTransaction :: Maybe Bytes+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BeginTransactionResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'btrTransaction'+beginTransactionResponse+ :: BeginTransactionResponse+beginTransactionResponse = BeginTransactionResponse' {_btrTransaction = Nothing}+++-- | The transaction that was started.+btrTransaction :: Lens' BeginTransactionResponse (Maybe ByteString)+btrTransaction+ = lens _btrTransaction+ (\ s a -> s{_btrTransaction = a})+ . mapping _Bytes++instance FromJSON BeginTransactionResponse where+ parseJSON+ = withObject "BeginTransactionResponse"+ (\ o ->+ BeginTransactionResponse' <$> (o .:? "transaction"))++instance ToJSON BeginTransactionResponse where+ toJSON BeginTransactionResponse'{..}+ = object+ (catMaybes [("transaction" .=) <$> _btrTransaction])++-- | The response for Firestore.RunQuery.+--+-- /See:/ 'runQueryResponse' smart constructor.+data RunQueryResponse =+ RunQueryResponse'+ { _rReadTime :: !(Maybe DateTime')+ , _rSkippedResults :: !(Maybe (Textual Int32))+ , _rTransaction :: !(Maybe Bytes)+ , _rDocument :: !(Maybe Document)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RunQueryResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rReadTime'+--+-- * 'rSkippedResults'+--+-- * 'rTransaction'+--+-- * 'rDocument'+runQueryResponse+ :: RunQueryResponse+runQueryResponse =+ RunQueryResponse'+ { _rReadTime = Nothing+ , _rSkippedResults = Nothing+ , _rTransaction = Nothing+ , _rDocument = Nothing+ }+++-- | The time at which the document was read. This may be monotonically+-- increasing; in this case, the previous documents in the result stream+-- are guaranteed not to have changed between their \`read_time\` and this+-- one. If the query returns no results, a response with \`read_time\` and+-- no \`document\` will be sent, and this represents the time at which the+-- query was run.+rReadTime :: Lens' RunQueryResponse (Maybe UTCTime)+rReadTime+ = lens _rReadTime (\ s a -> s{_rReadTime = a}) .+ mapping _DateTime++-- | The number of results that have been skipped due to an offset between+-- the last response and the current response.+rSkippedResults :: Lens' RunQueryResponse (Maybe Int32)+rSkippedResults+ = lens _rSkippedResults+ (\ s a -> s{_rSkippedResults = a})+ . mapping _Coerce++-- | The transaction that was started as part of this request. Can only be+-- set in the first response, and only if RunQueryRequest.new_transaction+-- was set in the request. If set, no other fields will be set in this+-- response.+rTransaction :: Lens' RunQueryResponse (Maybe ByteString)+rTransaction+ = lens _rTransaction (\ s a -> s{_rTransaction = a})+ . mapping _Bytes++-- | A query result. Not set when reporting partial progress.+rDocument :: Lens' RunQueryResponse (Maybe Document)+rDocument+ = lens _rDocument (\ s a -> s{_rDocument = a})++instance FromJSON RunQueryResponse where+ parseJSON+ = withObject "RunQueryResponse"+ (\ o ->+ RunQueryResponse' <$>+ (o .:? "readTime") <*> (o .:? "skippedResults") <*>+ (o .:? "transaction")+ <*> (o .:? "document"))++instance ToJSON RunQueryResponse where+ toJSON RunQueryResponse'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _rReadTime,+ ("skippedResults" .=) <$> _rSkippedResults,+ ("transaction" .=) <$> _rTransaction,+ ("document" .=) <$> _rDocument])++-- | Metadata for google.longrunning.Operation results from+-- FirestoreAdmin.ExportDocuments.+--+-- /See:/ 'googleFirestoreAdminV1ExportDocumentsMetadata' smart constructor.+data GoogleFirestoreAdminV1ExportDocumentsMetadata =+ GoogleFirestoreAdminV1ExportDocumentsMetadata'+ { _gfavedmProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavedmStartTime :: !(Maybe DateTime')+ , _gfavedmCollectionIds :: !(Maybe [Text])+ , _gfavedmProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavedmEndTime :: !(Maybe DateTime')+ , _gfavedmOperationState :: !(Maybe GoogleFirestoreAdminV1ExportDocumentsMetadataOperationState)+ , _gfavedmOutputURIPrefix :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavedmProgressBytes'+--+-- * 'gfavedmStartTime'+--+-- * 'gfavedmCollectionIds'+--+-- * 'gfavedmProgressDocuments'+--+-- * 'gfavedmEndTime'+--+-- * 'gfavedmOperationState'+--+-- * 'gfavedmOutputURIPrefix'+googleFirestoreAdminV1ExportDocumentsMetadata+ :: GoogleFirestoreAdminV1ExportDocumentsMetadata+googleFirestoreAdminV1ExportDocumentsMetadata =+ GoogleFirestoreAdminV1ExportDocumentsMetadata'+ { _gfavedmProgressBytes = Nothing+ , _gfavedmStartTime = Nothing+ , _gfavedmCollectionIds = Nothing+ , _gfavedmProgressDocuments = Nothing+ , _gfavedmEndTime = Nothing+ , _gfavedmOperationState = Nothing+ , _gfavedmOutputURIPrefix = Nothing+ }+++-- | The progress, in bytes, of this operation.+gfavedmProgressBytes :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavedmProgressBytes+ = lens _gfavedmProgressBytes+ (\ s a -> s{_gfavedmProgressBytes = a})++-- | The time this operation started.+gfavedmStartTime :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe UTCTime)+gfavedmStartTime+ = lens _gfavedmStartTime+ (\ s a -> s{_gfavedmStartTime = a})+ . mapping _DateTime++-- | Which collection ids are being exported.+gfavedmCollectionIds :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata [Text]+gfavedmCollectionIds+ = lens _gfavedmCollectionIds+ (\ s a -> s{_gfavedmCollectionIds = a})+ . _Default+ . _Coerce++-- | The progress, in documents, of this operation.+gfavedmProgressDocuments :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavedmProgressDocuments+ = lens _gfavedmProgressDocuments+ (\ s a -> s{_gfavedmProgressDocuments = a})++-- | The time this operation completed. Will be unset if operation still in+-- progress.+gfavedmEndTime :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe UTCTime)+gfavedmEndTime+ = lens _gfavedmEndTime+ (\ s a -> s{_gfavedmEndTime = a})+ . mapping _DateTime++-- | The state of the export operation.+gfavedmOperationState :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe GoogleFirestoreAdminV1ExportDocumentsMetadataOperationState)+gfavedmOperationState+ = lens _gfavedmOperationState+ (\ s a -> s{_gfavedmOperationState = a})++-- | Where the entities are being exported to.+gfavedmOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsMetadata (Maybe Text)+gfavedmOutputURIPrefix+ = lens _gfavedmOutputURIPrefix+ (\ s a -> s{_gfavedmOutputURIPrefix = a})++instance FromJSON+ GoogleFirestoreAdminV1ExportDocumentsMetadata+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ExportDocumentsMetadata"+ (\ o ->+ GoogleFirestoreAdminV1ExportDocumentsMetadata' <$>+ (o .:? "progressBytes") <*> (o .:? "startTime") <*>+ (o .:? "collectionIds" .!= mempty)+ <*> (o .:? "progressDocuments")+ <*> (o .:? "endTime")+ <*> (o .:? "operationState")+ <*> (o .:? "outputUriPrefix"))++instance ToJSON+ GoogleFirestoreAdminV1ExportDocumentsMetadata+ where+ toJSON+ GoogleFirestoreAdminV1ExportDocumentsMetadata'{..}+ = object+ (catMaybes+ [("progressBytes" .=) <$> _gfavedmProgressBytes,+ ("startTime" .=) <$> _gfavedmStartTime,+ ("collectionIds" .=) <$> _gfavedmCollectionIds,+ ("progressDocuments" .=) <$>+ _gfavedmProgressDocuments,+ ("endTime" .=) <$> _gfavedmEndTime,+ ("operationState" .=) <$> _gfavedmOperationState,+ ("outputUriPrefix" .=) <$> _gfavedmOutputURIPrefix])++-- | Describes the progress of the operation. Unit of work is generic and+-- must be interpreted based on where Progress is used.+--+-- /See:/ 'googleFirestoreAdminV1Progress' smart constructor.+data GoogleFirestoreAdminV1Progress =+ GoogleFirestoreAdminV1Progress'+ { _gfavpCompletedWork :: !(Maybe (Textual Int64))+ , _gfavpEstimatedWork :: !(Maybe (Textual Int64))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1Progress' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavpCompletedWork'+--+-- * 'gfavpEstimatedWork'+googleFirestoreAdminV1Progress+ :: GoogleFirestoreAdminV1Progress+googleFirestoreAdminV1Progress =+ GoogleFirestoreAdminV1Progress'+ {_gfavpCompletedWork = Nothing, _gfavpEstimatedWork = Nothing}+++-- | The amount of work completed.+gfavpCompletedWork :: Lens' GoogleFirestoreAdminV1Progress (Maybe Int64)+gfavpCompletedWork+ = lens _gfavpCompletedWork+ (\ s a -> s{_gfavpCompletedWork = a})+ . mapping _Coerce++-- | The amount of work estimated.+gfavpEstimatedWork :: Lens' GoogleFirestoreAdminV1Progress (Maybe Int64)+gfavpEstimatedWork+ = lens _gfavpEstimatedWork+ (\ s a -> s{_gfavpEstimatedWork = a})+ . mapping _Coerce++instance FromJSON GoogleFirestoreAdminV1Progress+ where+ parseJSON+ = withObject "GoogleFirestoreAdminV1Progress"+ (\ o ->+ GoogleFirestoreAdminV1Progress' <$>+ (o .:? "completedWork") <*> (o .:? "estimatedWork"))++instance ToJSON GoogleFirestoreAdminV1Progress where+ toJSON GoogleFirestoreAdminV1Progress'{..}+ = object+ (catMaybes+ [("completedWork" .=) <$> _gfavpCompletedWork,+ ("estimatedWork" .=) <$> _gfavpEstimatedWork])++-- | A set of field paths on a document. Used to restrict a get or update+-- operation on a document to a subset of its fields. This is different+-- from standard field masks, as this is always scoped to a Document, and+-- takes in account the dynamic nature of Value.+--+-- /See:/ 'documentMask' smart constructor.+newtype DocumentMask =+ DocumentMask'+ { _dmFieldPaths :: Maybe [Text]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentMask' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dmFieldPaths'+documentMask+ :: DocumentMask+documentMask = DocumentMask' {_dmFieldPaths = Nothing}+++-- | The list of field paths in the mask. See Document.fields for a field+-- path syntax reference.+dmFieldPaths :: Lens' DocumentMask [Text]+dmFieldPaths+ = lens _dmFieldPaths (\ s a -> s{_dmFieldPaths = a})+ . _Default+ . _Coerce++instance FromJSON DocumentMask where+ parseJSON+ = withObject "DocumentMask"+ (\ o ->+ DocumentMask' <$> (o .:? "fieldPaths" .!= mempty))++instance ToJSON DocumentMask where+ toJSON DocumentMask'{..}+ = object+ (catMaybes [("fieldPaths" .=) <$> _dmFieldPaths])++-- | A target specified by a query.+--+-- /See:/ 'queryTarget' smart constructor.+data QueryTarget =+ QueryTarget'+ { _qtParent :: !(Maybe Text)+ , _qtStructuredQuery :: !(Maybe StructuredQuery)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'QueryTarget' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'qtParent'+--+-- * 'qtStructuredQuery'+queryTarget+ :: QueryTarget+queryTarget = QueryTarget' {_qtParent = Nothing, _qtStructuredQuery = Nothing}+++-- | The parent resource name. In the format:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\` or+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+-- For example: \`projects\/my-project\/databases\/my-database\/documents\`+-- or+-- \`projects\/my-project\/databases\/my-database\/documents\/chatrooms\/my-chatroom\`+qtParent :: Lens' QueryTarget (Maybe Text)+qtParent = lens _qtParent (\ s a -> s{_qtParent = a})++-- | A structured query.+qtStructuredQuery :: Lens' QueryTarget (Maybe StructuredQuery)+qtStructuredQuery+ = lens _qtStructuredQuery+ (\ s a -> s{_qtStructuredQuery = a})++instance FromJSON QueryTarget where+ parseJSON+ = withObject "QueryTarget"+ (\ o ->+ QueryTarget' <$>+ (o .:? "parent") <*> (o .:? "structuredQuery"))++instance ToJSON QueryTarget where+ toJSON QueryTarget'{..}+ = object+ (catMaybes+ [("parent" .=) <$> _qtParent,+ ("structuredQuery" .=) <$> _qtStructuredQuery])++-- | A message that can hold any of the supported value types.+--+-- /See:/ 'value' smart constructor.+data Value =+ Value'+ { _vGeoPointValue :: !(Maybe LatLng)+ , _vBytesValue :: !(Maybe Bytes)+ , _vIntegerValue :: !(Maybe (Textual Int64))+ , _vTimestampValue :: !(Maybe DateTime')+ , _vDoubleValue :: !(Maybe (Textual Double))+ , _vStringValue :: !(Maybe Text)+ , _vBooleanValue :: !(Maybe Bool)+ , _vMapValue :: !(Maybe MapValue)+ , _vArrayValue :: !(Maybe ArrayValue)+ , _vReferenceValue :: !(Maybe Text)+ , _vNullValue :: !(Maybe ValueNullValue)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Value' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vGeoPointValue'+--+-- * 'vBytesValue'+--+-- * 'vIntegerValue'+--+-- * 'vTimestampValue'+--+-- * 'vDoubleValue'+--+-- * 'vStringValue'+--+-- * 'vBooleanValue'+--+-- * 'vMapValue'+--+-- * 'vArrayValue'+--+-- * 'vReferenceValue'+--+-- * 'vNullValue'+value+ :: Value+value =+ Value'+ { _vGeoPointValue = Nothing+ , _vBytesValue = Nothing+ , _vIntegerValue = Nothing+ , _vTimestampValue = Nothing+ , _vDoubleValue = Nothing+ , _vStringValue = Nothing+ , _vBooleanValue = Nothing+ , _vMapValue = Nothing+ , _vArrayValue = Nothing+ , _vReferenceValue = Nothing+ , _vNullValue = Nothing+ }+++-- | A geo point value representing a point on the surface of Earth.+vGeoPointValue :: Lens' Value (Maybe LatLng)+vGeoPointValue+ = lens _vGeoPointValue+ (\ s a -> s{_vGeoPointValue = a})++-- | A bytes value. Must not exceed 1 MiB - 89 bytes. Only the first 1,500+-- bytes are considered by queries.+vBytesValue :: Lens' Value (Maybe ByteString)+vBytesValue+ = lens _vBytesValue (\ s a -> s{_vBytesValue = a}) .+ mapping _Bytes++-- | An integer value.+vIntegerValue :: Lens' Value (Maybe Int64)+vIntegerValue+ = lens _vIntegerValue+ (\ s a -> s{_vIntegerValue = a})+ . mapping _Coerce++-- | A timestamp value. Precise only to microseconds. When stored, any+-- additional precision is rounded down.+vTimestampValue :: Lens' Value (Maybe UTCTime)+vTimestampValue+ = lens _vTimestampValue+ (\ s a -> s{_vTimestampValue = a})+ . mapping _DateTime++-- | A double value.+vDoubleValue :: Lens' Value (Maybe Double)+vDoubleValue+ = lens _vDoubleValue (\ s a -> s{_vDoubleValue = a})+ . mapping _Coerce++-- | A string value. The string, represented as UTF-8, must not exceed 1 MiB+-- - 89 bytes. Only the first 1,500 bytes of the UTF-8 representation are+-- considered by queries.+vStringValue :: Lens' Value (Maybe Text)+vStringValue+ = lens _vStringValue (\ s a -> s{_vStringValue = a})++-- | A boolean value.+vBooleanValue :: Lens' Value (Maybe Bool)+vBooleanValue+ = lens _vBooleanValue+ (\ s a -> s{_vBooleanValue = a})++-- | A map value.+vMapValue :: Lens' Value (Maybe MapValue)+vMapValue+ = lens _vMapValue (\ s a -> s{_vMapValue = a})++-- | An array value. Cannot directly contain another array value, though can+-- contain an map which contains another array.+vArrayValue :: Lens' Value (Maybe ArrayValue)+vArrayValue+ = lens _vArrayValue (\ s a -> s{_vArrayValue = a})++-- | A reference to a document. For example:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+vReferenceValue :: Lens' Value (Maybe Text)+vReferenceValue+ = lens _vReferenceValue+ (\ s a -> s{_vReferenceValue = a})++-- | A null value.+vNullValue :: Lens' Value (Maybe ValueNullValue)+vNullValue+ = lens _vNullValue (\ s a -> s{_vNullValue = a})++instance FromJSON Value where+ parseJSON+ = withObject "Value"+ (\ o ->+ Value' <$>+ (o .:? "geoPointValue") <*> (o .:? "bytesValue") <*>+ (o .:? "integerValue")+ <*> (o .:? "timestampValue")+ <*> (o .:? "doubleValue")+ <*> (o .:? "stringValue")+ <*> (o .:? "booleanValue")+ <*> (o .:? "mapValue")+ <*> (o .:? "arrayValue")+ <*> (o .:? "referenceValue")+ <*> (o .:? "nullValue"))++instance ToJSON Value where+ toJSON Value'{..}+ = object+ (catMaybes+ [("geoPointValue" .=) <$> _vGeoPointValue,+ ("bytesValue" .=) <$> _vBytesValue,+ ("integerValue" .=) <$> _vIntegerValue,+ ("timestampValue" .=) <$> _vTimestampValue,+ ("doubleValue" .=) <$> _vDoubleValue,+ ("stringValue" .=) <$> _vStringValue,+ ("booleanValue" .=) <$> _vBooleanValue,+ ("mapValue" .=) <$> _vMapValue,+ ("arrayValue" .=) <$> _vArrayValue,+ ("referenceValue" .=) <$> _vReferenceValue,+ ("nullValue" .=) <$> _vNullValue])++--+-- /See:/ 'statusDetailsItem' smart constructor.+newtype StatusDetailsItem =+ StatusDetailsItem'+ { _sdiAddtional :: HashMap Text JSONValue+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StatusDetailsItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdiAddtional'+statusDetailsItem+ :: HashMap Text JSONValue -- ^ 'sdiAddtional'+ -> StatusDetailsItem+statusDetailsItem pSdiAddtional_ =+ StatusDetailsItem' {_sdiAddtional = _Coerce # pSdiAddtional_}+++-- | Properties of the object. Contains field \'type with type URL.+sdiAddtional :: Lens' StatusDetailsItem (HashMap Text JSONValue)+sdiAddtional+ = lens _sdiAddtional (\ s a -> s{_sdiAddtional = a})+ . _Coerce++instance FromJSON StatusDetailsItem where+ parseJSON+ = withObject "StatusDetailsItem"+ (\ o -> StatusDetailsItem' <$> (parseJSONObject o))++instance ToJSON StatusDetailsItem where+ toJSON = toJSON . _sdiAddtional++-- | A transformation of a document.+--+-- /See:/ 'documentTransform' smart constructor.+data DocumentTransform =+ DocumentTransform'+ { _dtDocument :: !(Maybe Text)+ , _dtFieldTransforms :: !(Maybe [FieldTransform])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentTransform' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dtDocument'+--+-- * 'dtFieldTransforms'+documentTransform+ :: DocumentTransform+documentTransform =+ DocumentTransform' {_dtDocument = Nothing, _dtFieldTransforms = Nothing}+++-- | The name of the document to transform.+dtDocument :: Lens' DocumentTransform (Maybe Text)+dtDocument+ = lens _dtDocument (\ s a -> s{_dtDocument = a})++-- | The list of transformations to apply to the fields of the document, in+-- order. This must not be empty.+dtFieldTransforms :: Lens' DocumentTransform [FieldTransform]+dtFieldTransforms+ = lens _dtFieldTransforms+ (\ s a -> s{_dtFieldTransforms = a})+ . _Default+ . _Coerce++instance FromJSON DocumentTransform where+ parseJSON+ = withObject "DocumentTransform"+ (\ o ->+ DocumentTransform' <$>+ (o .:? "document") <*>+ (o .:? "fieldTransforms" .!= mempty))++instance ToJSON DocumentTransform where+ toJSON DocumentTransform'{..}+ = object+ (catMaybes+ [("document" .=) <$> _dtDocument,+ ("fieldTransforms" .=) <$> _dtFieldTransforms])++-- | A Firestore query.+--+-- /See:/ 'structuredQuery' smart constructor.+data StructuredQuery =+ StructuredQuery'+ { _sqWhere :: !(Maybe Filter)+ , _sqOrderBy :: !(Maybe [Order])+ , _sqStartAt :: !(Maybe Cursor)+ , _sqOffSet :: !(Maybe (Textual Int32))+ , _sqFrom :: !(Maybe [CollectionSelector])+ , _sqEndAt :: !(Maybe Cursor)+ , _sqLimit :: !(Maybe (Textual Int32))+ , _sqSelect :: !(Maybe Projection)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'StructuredQuery' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sqWhere'+--+-- * 'sqOrderBy'+--+-- * 'sqStartAt'+--+-- * 'sqOffSet'+--+-- * 'sqFrom'+--+-- * 'sqEndAt'+--+-- * 'sqLimit'+--+-- * 'sqSelect'+structuredQuery+ :: StructuredQuery+structuredQuery =+ StructuredQuery'+ { _sqWhere = Nothing+ , _sqOrderBy = Nothing+ , _sqStartAt = Nothing+ , _sqOffSet = Nothing+ , _sqFrom = Nothing+ , _sqEndAt = Nothing+ , _sqLimit = Nothing+ , _sqSelect = Nothing+ }+++-- | The filter to apply.+sqWhere :: Lens' StructuredQuery (Maybe Filter)+sqWhere = lens _sqWhere (\ s a -> s{_sqWhere = a})++-- | The order to apply to the query results. Firestore guarantees a stable+-- ordering through the following rules: * Any field required to appear in+-- \`order_by\`, that is not already specified in \`order_by\`, is appended+-- to the order in field name order by default. * If an order on+-- \`__name__\` is not specified, it is appended by default. Fields are+-- appended with the same sort direction as the last order specified, or+-- \'ASCENDING\' if no order was specified. For example: * \`SELECT * FROM+-- Foo ORDER BY A\` becomes \`SELECT * FROM Foo ORDER BY A, __name__\` *+-- \`SELECT * FROM Foo ORDER BY A DESC\` becomes \`SELECT * FROM Foo ORDER+-- BY A DESC, __name__ DESC\` * \`SELECT * FROM Foo WHERE A > 1\` becomes+-- \`SELECT * FROM Foo WHERE A > 1 ORDER BY A, __name__\`+sqOrderBy :: Lens' StructuredQuery [Order]+sqOrderBy+ = lens _sqOrderBy (\ s a -> s{_sqOrderBy = a}) .+ _Default+ . _Coerce++-- | A starting point for the query results.+sqStartAt :: Lens' StructuredQuery (Maybe Cursor)+sqStartAt+ = lens _sqStartAt (\ s a -> s{_sqStartAt = a})++-- | The number of results to skip. Applies before limit, but after all other+-- constraints. Must be >= 0 if specified.+sqOffSet :: Lens' StructuredQuery (Maybe Int32)+sqOffSet+ = lens _sqOffSet (\ s a -> s{_sqOffSet = a}) .+ mapping _Coerce++-- | The collections to query.+sqFrom :: Lens' StructuredQuery [CollectionSelector]+sqFrom+ = lens _sqFrom (\ s a -> s{_sqFrom = a}) . _Default .+ _Coerce++-- | A end point for the query results.+sqEndAt :: Lens' StructuredQuery (Maybe Cursor)+sqEndAt = lens _sqEndAt (\ s a -> s{_sqEndAt = a})++-- | The maximum number of results to return. Applies after all other+-- constraints. Must be >= 0 if specified.+sqLimit :: Lens' StructuredQuery (Maybe Int32)+sqLimit+ = lens _sqLimit (\ s a -> s{_sqLimit = a}) .+ mapping _Coerce++-- | The projection to return.+sqSelect :: Lens' StructuredQuery (Maybe Projection)+sqSelect = lens _sqSelect (\ s a -> s{_sqSelect = a})++instance FromJSON StructuredQuery where+ parseJSON+ = withObject "StructuredQuery"+ (\ o ->+ StructuredQuery' <$>+ (o .:? "where") <*> (o .:? "orderBy" .!= mempty) <*>+ (o .:? "startAt")+ <*> (o .:? "offset")+ <*> (o .:? "from" .!= mempty)+ <*> (o .:? "endAt")+ <*> (o .:? "limit")+ <*> (o .:? "select"))++instance ToJSON StructuredQuery where+ toJSON StructuredQuery'{..}+ = object+ (catMaybes+ [("where" .=) <$> _sqWhere,+ ("orderBy" .=) <$> _sqOrderBy,+ ("startAt" .=) <$> _sqStartAt,+ ("offset" .=) <$> _sqOffSet, ("from" .=) <$> _sqFrom,+ ("endAt" .=) <$> _sqEndAt, ("limit" .=) <$> _sqLimit,+ ("select" .=) <$> _sqSelect])++-- | A digest of all the documents that match a given target.+--+-- /See:/ 'existenceFilter' smart constructor.+data ExistenceFilter =+ ExistenceFilter'+ { _efTargetId :: !(Maybe (Textual Int32))+ , _efCount :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ExistenceFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'efTargetId'+--+-- * 'efCount'+existenceFilter+ :: ExistenceFilter+existenceFilter = ExistenceFilter' {_efTargetId = Nothing, _efCount = Nothing}+++-- | The target ID to which this filter applies.+efTargetId :: Lens' ExistenceFilter (Maybe Int32)+efTargetId+ = lens _efTargetId (\ s a -> s{_efTargetId = a}) .+ mapping _Coerce++-- | The total count of documents that match target_id. If different from the+-- count of documents in the client that match, the client must manually+-- determine which documents no longer match the target.+efCount :: Lens' ExistenceFilter (Maybe Int32)+efCount+ = lens _efCount (\ s a -> s{_efCount = a}) .+ mapping _Coerce++instance FromJSON ExistenceFilter where+ parseJSON+ = withObject "ExistenceFilter"+ (\ o ->+ ExistenceFilter' <$>+ (o .:? "targetId") <*> (o .:? "count"))++instance ToJSON ExistenceFilter where+ toJSON ExistenceFilter'{..}+ = object+ (catMaybes+ [("targetId" .=) <$> _efTargetId,+ ("count" .=) <$> _efCount])++-- | The response for FirestoreAdmin.ListFields.+--+-- /See:/ 'googleFirestoreAdminV1ListFieldsResponse' smart constructor.+data GoogleFirestoreAdminV1ListFieldsResponse =+ GoogleFirestoreAdminV1ListFieldsResponse'+ { _gfavlfrNextPageToken :: !(Maybe Text)+ , _gfavlfrFields :: !(Maybe [GoogleFirestoreAdminV1Field])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ListFieldsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavlfrNextPageToken'+--+-- * 'gfavlfrFields'+googleFirestoreAdminV1ListFieldsResponse+ :: GoogleFirestoreAdminV1ListFieldsResponse+googleFirestoreAdminV1ListFieldsResponse =+ GoogleFirestoreAdminV1ListFieldsResponse'+ {_gfavlfrNextPageToken = Nothing, _gfavlfrFields = Nothing}+++-- | A page token that may be used to request another page of results. If+-- blank, this is the last page.+gfavlfrNextPageToken :: Lens' GoogleFirestoreAdminV1ListFieldsResponse (Maybe Text)+gfavlfrNextPageToken+ = lens _gfavlfrNextPageToken+ (\ s a -> s{_gfavlfrNextPageToken = a})++-- | The requested fields.+gfavlfrFields :: Lens' GoogleFirestoreAdminV1ListFieldsResponse [GoogleFirestoreAdminV1Field]+gfavlfrFields+ = lens _gfavlfrFields+ (\ s a -> s{_gfavlfrFields = a})+ . _Default+ . _Coerce++instance FromJSON+ GoogleFirestoreAdminV1ListFieldsResponse+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ListFieldsResponse"+ (\ o ->+ GoogleFirestoreAdminV1ListFieldsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "fields" .!= mempty))++instance ToJSON+ GoogleFirestoreAdminV1ListFieldsResponse+ where+ toJSON GoogleFirestoreAdminV1ListFieldsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _gfavlfrNextPageToken,+ ("fields" .=) <$> _gfavlfrFields])++-- | The request for FirestoreAdmin.ImportDocuments.+--+-- /See:/ 'googleFirestoreAdminV1ImportDocumentsRequest' smart constructor.+data GoogleFirestoreAdminV1ImportDocumentsRequest =+ GoogleFirestoreAdminV1ImportDocumentsRequest'+ { _gfavidrInputURIPrefix :: !(Maybe Text)+ , _gfavidrCollectionIds :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ImportDocumentsRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavidrInputURIPrefix'+--+-- * 'gfavidrCollectionIds'+googleFirestoreAdminV1ImportDocumentsRequest+ :: GoogleFirestoreAdminV1ImportDocumentsRequest+googleFirestoreAdminV1ImportDocumentsRequest =+ GoogleFirestoreAdminV1ImportDocumentsRequest'+ {_gfavidrInputURIPrefix = Nothing, _gfavidrCollectionIds = Nothing}+++-- | Location of the exported files. This must match the output_uri_prefix of+-- an ExportDocumentsResponse from an export that has completed+-- successfully. See:+-- google.firestore.admin.v1.ExportDocumentsResponse.output_uri_prefix.+gfavidrInputURIPrefix :: Lens' GoogleFirestoreAdminV1ImportDocumentsRequest (Maybe Text)+gfavidrInputURIPrefix+ = lens _gfavidrInputURIPrefix+ (\ s a -> s{_gfavidrInputURIPrefix = a})++-- | Which collection ids to import. Unspecified means all collections+-- included in the import.+gfavidrCollectionIds :: Lens' GoogleFirestoreAdminV1ImportDocumentsRequest [Text]+gfavidrCollectionIds+ = lens _gfavidrCollectionIds+ (\ s a -> s{_gfavidrCollectionIds = a})+ . _Default+ . _Coerce++instance FromJSON+ GoogleFirestoreAdminV1ImportDocumentsRequest+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ImportDocumentsRequest"+ (\ o ->+ GoogleFirestoreAdminV1ImportDocumentsRequest' <$>+ (o .:? "inputUriPrefix") <*>+ (o .:? "collectionIds" .!= mempty))++instance ToJSON+ GoogleFirestoreAdminV1ImportDocumentsRequest+ where+ toJSON+ GoogleFirestoreAdminV1ImportDocumentsRequest'{..}+ = object+ (catMaybes+ [("inputUriPrefix" .=) <$> _gfavidrInputURIPrefix,+ ("collectionIds" .=) <$> _gfavidrCollectionIds])++-- | The metadata message for google.cloud.location.Location.metadata.+--+-- /See:/ 'googleFirestoreAdminV1LocationMetadata' smart constructor.+data GoogleFirestoreAdminV1LocationMetadata =+ GoogleFirestoreAdminV1LocationMetadata'+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1LocationMetadata' with the minimum fields required to make a request.+--+googleFirestoreAdminV1LocationMetadata+ :: GoogleFirestoreAdminV1LocationMetadata+googleFirestoreAdminV1LocationMetadata = GoogleFirestoreAdminV1LocationMetadata'+++instance FromJSON+ GoogleFirestoreAdminV1LocationMetadata+ where+ parseJSON+ = withObject "GoogleFirestoreAdminV1LocationMetadata"+ (\ o -> pure GoogleFirestoreAdminV1LocationMetadata')++instance ToJSON+ GoogleFirestoreAdminV1LocationMetadata+ where+ toJSON = const emptyObject++-- | The request message for Operations.CancelOperation.+--+-- /See:/ 'googleLongrunningCancelOperationRequest' smart constructor.+data GoogleLongrunningCancelOperationRequest =+ GoogleLongrunningCancelOperationRequest'+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleLongrunningCancelOperationRequest' with the minimum fields required to make a request.+--+googleLongrunningCancelOperationRequest+ :: GoogleLongrunningCancelOperationRequest+googleLongrunningCancelOperationRequest =+ GoogleLongrunningCancelOperationRequest'+++instance FromJSON+ GoogleLongrunningCancelOperationRequest+ where+ parseJSON+ = withObject+ "GoogleLongrunningCancelOperationRequest"+ (\ o ->+ pure GoogleLongrunningCancelOperationRequest')++instance ToJSON+ GoogleLongrunningCancelOperationRequest+ where+ toJSON = const emptyObject++-- | The response from Firestore.ListCollectionIds.+--+-- /See:/ 'listCollectionIdsResponse' smart constructor.+data ListCollectionIdsResponse =+ ListCollectionIdsResponse'+ { _lcirNextPageToken :: !(Maybe Text)+ , _lcirCollectionIds :: !(Maybe [Text])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListCollectionIdsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lcirNextPageToken'+--+-- * 'lcirCollectionIds'+listCollectionIdsResponse+ :: ListCollectionIdsResponse+listCollectionIdsResponse =+ ListCollectionIdsResponse'+ {_lcirNextPageToken = Nothing, _lcirCollectionIds = Nothing}+++-- | A page token that may be used to continue the list.+lcirNextPageToken :: Lens' ListCollectionIdsResponse (Maybe Text)+lcirNextPageToken+ = lens _lcirNextPageToken+ (\ s a -> s{_lcirNextPageToken = a})++-- | The collection ids.+lcirCollectionIds :: Lens' ListCollectionIdsResponse [Text]+lcirCollectionIds+ = lens _lcirCollectionIds+ (\ s a -> s{_lcirCollectionIds = a})+ . _Default+ . _Coerce++instance FromJSON ListCollectionIdsResponse where+ parseJSON+ = withObject "ListCollectionIdsResponse"+ (\ o ->+ ListCollectionIdsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "collectionIds" .!= mempty))++instance ToJSON ListCollectionIdsResponse where+ toJSON ListCollectionIdsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lcirNextPageToken,+ ("collectionIds" .=) <$> _lcirCollectionIds])++-- | A reference to a field, such as \`max(messages.time) as max_time\`.+--+-- /See:/ 'fieldReference' smart constructor.+newtype FieldReference =+ FieldReference'+ { _frFieldPath :: Maybe Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FieldReference' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'frFieldPath'+fieldReference+ :: FieldReference+fieldReference = FieldReference' {_frFieldPath = Nothing}+++frFieldPath :: Lens' FieldReference (Maybe Text)+frFieldPath+ = lens _frFieldPath (\ s a -> s{_frFieldPath = a})++instance FromJSON FieldReference where+ parseJSON+ = withObject "FieldReference"+ (\ o -> FieldReference' <$> (o .:? "fieldPath"))++instance ToJSON FieldReference where+ toJSON FieldReference'{..}+ = object+ (catMaybes [("fieldPath" .=) <$> _frFieldPath])++-- | A Document has been removed from the view of the targets. Sent if the+-- document is no longer relevant to a target and is out of view. Can be+-- sent instead of a DocumentDelete or a DocumentChange if the server can+-- not send the new value of the document. Multiple DocumentRemove messages+-- may be returned for the same logical write or delete, if multiple+-- targets are affected.+--+-- /See:/ 'documentRemove' smart constructor.+data DocumentRemove =+ DocumentRemove'+ { _drReadTime :: !(Maybe DateTime')+ , _drDocument :: !(Maybe Text)+ , _drRemovedTargetIds :: !(Maybe [Textual Int32])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentRemove' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'drReadTime'+--+-- * 'drDocument'+--+-- * 'drRemovedTargetIds'+documentRemove+ :: DocumentRemove+documentRemove =+ DocumentRemove'+ { _drReadTime = Nothing+ , _drDocument = Nothing+ , _drRemovedTargetIds = Nothing+ }+++-- | The read timestamp at which the remove was observed. Greater or equal to+-- the \`commit_time\` of the change\/delete\/remove.+drReadTime :: Lens' DocumentRemove (Maybe UTCTime)+drReadTime+ = lens _drReadTime (\ s a -> s{_drReadTime = a}) .+ mapping _DateTime++-- | The resource name of the Document that has gone out of view.+drDocument :: Lens' DocumentRemove (Maybe Text)+drDocument+ = lens _drDocument (\ s a -> s{_drDocument = a})++-- | A set of target IDs for targets that previously matched this document.+drRemovedTargetIds :: Lens' DocumentRemove [Int32]+drRemovedTargetIds+ = lens _drRemovedTargetIds+ (\ s a -> s{_drRemovedTargetIds = a})+ . _Default+ . _Coerce++instance FromJSON DocumentRemove where+ parseJSON+ = withObject "DocumentRemove"+ (\ o ->+ DocumentRemove' <$>+ (o .:? "readTime") <*> (o .:? "document") <*>+ (o .:? "removedTargetIds" .!= mempty))++instance ToJSON DocumentRemove where+ toJSON DocumentRemove'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _drReadTime,+ ("document" .=) <$> _drDocument,+ ("removedTargetIds" .=) <$> _drRemovedTargetIds])++-- | A Document has changed. May be the result of multiple writes, including+-- deletes, that ultimately resulted in a new value for the Document.+-- Multiple DocumentChange messages may be returned for the same logical+-- change, if multiple targets are affected.+--+-- /See:/ 'documentChange' smart constructor.+data DocumentChange =+ DocumentChange'+ { _dcDocument :: !(Maybe Document)+ , _dcTargetIds :: !(Maybe [Textual Int32])+ , _dcRemovedTargetIds :: !(Maybe [Textual Int32])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentChange' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcDocument'+--+-- * 'dcTargetIds'+--+-- * 'dcRemovedTargetIds'+documentChange+ :: DocumentChange+documentChange =+ DocumentChange'+ { _dcDocument = Nothing+ , _dcTargetIds = Nothing+ , _dcRemovedTargetIds = Nothing+ }+++-- | The new state of the Document. If \`mask\` is set, contains only fields+-- that were updated or added.+dcDocument :: Lens' DocumentChange (Maybe Document)+dcDocument+ = lens _dcDocument (\ s a -> s{_dcDocument = a})++-- | A set of target IDs of targets that match this document.+dcTargetIds :: Lens' DocumentChange [Int32]+dcTargetIds+ = lens _dcTargetIds (\ s a -> s{_dcTargetIds = a}) .+ _Default+ . _Coerce++-- | A set of target IDs for targets that no longer match this document.+dcRemovedTargetIds :: Lens' DocumentChange [Int32]+dcRemovedTargetIds+ = lens _dcRemovedTargetIds+ (\ s a -> s{_dcRemovedTargetIds = a})+ . _Default+ . _Coerce++instance FromJSON DocumentChange where+ parseJSON+ = withObject "DocumentChange"+ (\ o ->+ DocumentChange' <$>+ (o .:? "document") <*> (o .:? "targetIds" .!= mempty)+ <*> (o .:? "removedTargetIds" .!= mempty))++instance ToJSON DocumentChange where+ toJSON DocumentChange'{..}+ = object+ (catMaybes+ [("document" .=) <$> _dcDocument,+ ("targetIds" .=) <$> _dcTargetIds,+ ("removedTargetIds" .=) <$> _dcRemovedTargetIds])++-- | Metadata for google.longrunning.Operation results from+-- FirestoreAdmin.UpdateField.+--+-- /See:/ 'googleFirestoreAdminV1FieldOperationMetadata' smart constructor.+data GoogleFirestoreAdminV1FieldOperationMetadata =+ GoogleFirestoreAdminV1FieldOperationMetadata'+ { _gfavfomProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavfomState :: !(Maybe GoogleFirestoreAdminV1FieldOperationMetadataState)+ , _gfavfomField :: !(Maybe Text)+ , _gfavfomStartTime :: !(Maybe DateTime')+ , _gfavfomProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfavfomIndexConfigDeltas :: !(Maybe [GoogleFirestoreAdminV1IndexConfigDelta])+ , _gfavfomEndTime :: !(Maybe DateTime')+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1FieldOperationMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavfomProgressBytes'+--+-- * 'gfavfomState'+--+-- * 'gfavfomField'+--+-- * 'gfavfomStartTime'+--+-- * 'gfavfomProgressDocuments'+--+-- * 'gfavfomIndexConfigDeltas'+--+-- * 'gfavfomEndTime'+googleFirestoreAdminV1FieldOperationMetadata+ :: GoogleFirestoreAdminV1FieldOperationMetadata+googleFirestoreAdminV1FieldOperationMetadata =+ GoogleFirestoreAdminV1FieldOperationMetadata'+ { _gfavfomProgressBytes = Nothing+ , _gfavfomState = Nothing+ , _gfavfomField = Nothing+ , _gfavfomStartTime = Nothing+ , _gfavfomProgressDocuments = Nothing+ , _gfavfomIndexConfigDeltas = Nothing+ , _gfavfomEndTime = Nothing+ }+++-- | The progress, in bytes, of this operation.+gfavfomProgressBytes :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavfomProgressBytes+ = lens _gfavfomProgressBytes+ (\ s a -> s{_gfavfomProgressBytes = a})++-- | The state of the operation.+gfavfomState :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1FieldOperationMetadataState)+gfavfomState+ = lens _gfavfomState (\ s a -> s{_gfavfomState = a})++-- | The field resource that this operation is acting on. For example:+-- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/fields\/{field_path}\`+gfavfomField :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe Text)+gfavfomField+ = lens _gfavfomField (\ s a -> s{_gfavfomField = a})++-- | The time this operation started.+gfavfomStartTime :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe UTCTime)+gfavfomStartTime+ = lens _gfavfomStartTime+ (\ s a -> s{_gfavfomStartTime = a})+ . mapping _DateTime++-- | The progress, in documents, of this operation.+gfavfomProgressDocuments :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfavfomProgressDocuments+ = lens _gfavfomProgressDocuments+ (\ s a -> s{_gfavfomProgressDocuments = a})++-- | A list of IndexConfigDelta, which describe the intent of this operation.+gfavfomIndexConfigDeltas :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata [GoogleFirestoreAdminV1IndexConfigDelta]+gfavfomIndexConfigDeltas+ = lens _gfavfomIndexConfigDeltas+ (\ s a -> s{_gfavfomIndexConfigDeltas = a})+ . _Default+ . _Coerce++-- | The time this operation completed. Will be unset if operation still in+-- progress.+gfavfomEndTime :: Lens' GoogleFirestoreAdminV1FieldOperationMetadata (Maybe UTCTime)+gfavfomEndTime+ = lens _gfavfomEndTime+ (\ s a -> s{_gfavfomEndTime = a})+ . mapping _DateTime++instance FromJSON+ GoogleFirestoreAdminV1FieldOperationMetadata+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1FieldOperationMetadata"+ (\ o ->+ GoogleFirestoreAdminV1FieldOperationMetadata' <$>+ (o .:? "progressBytes") <*> (o .:? "state") <*>+ (o .:? "field")+ <*> (o .:? "startTime")+ <*> (o .:? "progressDocuments")+ <*> (o .:? "indexConfigDeltas" .!= mempty)+ <*> (o .:? "endTime"))++instance ToJSON+ GoogleFirestoreAdminV1FieldOperationMetadata+ where+ toJSON+ GoogleFirestoreAdminV1FieldOperationMetadata'{..}+ = object+ (catMaybes+ [("progressBytes" .=) <$> _gfavfomProgressBytes,+ ("state" .=) <$> _gfavfomState,+ ("field" .=) <$> _gfavfomField,+ ("startTime" .=) <$> _gfavfomStartTime,+ ("progressDocuments" .=) <$>+ _gfavfomProgressDocuments,+ ("indexConfigDeltas" .=) <$>+ _gfavfomIndexConfigDeltas,+ ("endTime" .=) <$> _gfavfomEndTime])++-- | The response for FirestoreAdmin.ListIndexes.+--+-- /See:/ 'googleFirestoreAdminV1ListIndexesResponse' smart constructor.+data GoogleFirestoreAdminV1ListIndexesResponse =+ GoogleFirestoreAdminV1ListIndexesResponse'+ { _gfavlirNextPageToken :: !(Maybe Text)+ , _gfavlirIndexes :: !(Maybe [GoogleFirestoreAdminV1Index])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ListIndexesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfavlirNextPageToken'+--+-- * 'gfavlirIndexes'+googleFirestoreAdminV1ListIndexesResponse+ :: GoogleFirestoreAdminV1ListIndexesResponse+googleFirestoreAdminV1ListIndexesResponse =+ GoogleFirestoreAdminV1ListIndexesResponse'+ {_gfavlirNextPageToken = Nothing, _gfavlirIndexes = Nothing}+++-- | A page token that may be used to request another page of results. If+-- blank, this is the last page.+gfavlirNextPageToken :: Lens' GoogleFirestoreAdminV1ListIndexesResponse (Maybe Text)+gfavlirNextPageToken+ = lens _gfavlirNextPageToken+ (\ s a -> s{_gfavlirNextPageToken = a})++-- | The requested indexes.+gfavlirIndexes :: Lens' GoogleFirestoreAdminV1ListIndexesResponse [GoogleFirestoreAdminV1Index]+gfavlirIndexes+ = lens _gfavlirIndexes+ (\ s a -> s{_gfavlirIndexes = a})+ . _Default+ . _Coerce++instance FromJSON+ GoogleFirestoreAdminV1ListIndexesResponse+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ListIndexesResponse"+ (\ o ->+ GoogleFirestoreAdminV1ListIndexesResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "indexes" .!= mempty))++instance ToJSON+ GoogleFirestoreAdminV1ListIndexesResponse+ where+ toJSON GoogleFirestoreAdminV1ListIndexesResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _gfavlirNextPageToken,+ ("indexes" .=) <$> _gfavlirIndexes])++-- | A map value.+--+-- /See:/ 'mapValue' smart constructor.+newtype MapValue =+ MapValue'+ { _mvFields :: Maybe MapValueFields+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'MapValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mvFields'+mapValue+ :: MapValue+mapValue = MapValue' {_mvFields = Nothing}+++-- | The map\'s fields. The map keys represent field names. Field names+-- matching the regular expression \`__.*__\` are reserved. Reserved field+-- names are forbidden except in certain documented contexts. The map keys,+-- represented as UTF-8, must not exceed 1,500 bytes and cannot be empty.+mvFields :: Lens' MapValue (Maybe MapValueFields)+mvFields = lens _mvFields (\ s a -> s{_mvFields = a})++instance FromJSON MapValue where+ parseJSON+ = withObject "MapValue"+ (\ o -> MapValue' <$> (o .:? "fields"))++instance ToJSON MapValue where+ toJSON MapValue'{..}+ = object (catMaybes [("fields" .=) <$> _mvFields])++-- | The request for Firestore.BatchGetDocuments.+--+-- /See:/ 'batchGetDocumentsRequest' smart constructor.+data BatchGetDocumentsRequest =+ BatchGetDocumentsRequest'+ { _bReadTime :: !(Maybe DateTime')+ , _bNewTransaction :: !(Maybe TransactionOptions)+ , _bTransaction :: !(Maybe Bytes)+ , _bDocuments :: !(Maybe [Text])+ , _bMask :: !(Maybe DocumentMask)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BatchGetDocumentsRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bReadTime'+--+-- * 'bNewTransaction'+--+-- * 'bTransaction'+--+-- * 'bDocuments'+--+-- * 'bMask'+batchGetDocumentsRequest+ :: BatchGetDocumentsRequest+batchGetDocumentsRequest =+ BatchGetDocumentsRequest'+ { _bReadTime = Nothing+ , _bNewTransaction = Nothing+ , _bTransaction = Nothing+ , _bDocuments = Nothing+ , _bMask = Nothing+ }+++-- | Reads documents as they were at the given time. This may not be older+-- than 60 seconds.+bReadTime :: Lens' BatchGetDocumentsRequest (Maybe UTCTime)+bReadTime+ = lens _bReadTime (\ s a -> s{_bReadTime = a}) .+ mapping _DateTime++-- | Starts a new transaction and reads the documents. Defaults to a+-- read-only transaction. The new transaction ID will be returned as the+-- first response in the stream.+bNewTransaction :: Lens' BatchGetDocumentsRequest (Maybe TransactionOptions)+bNewTransaction+ = lens _bNewTransaction+ (\ s a -> s{_bNewTransaction = a})++-- | Reads documents in a transaction.+bTransaction :: Lens' BatchGetDocumentsRequest (Maybe ByteString)+bTransaction+ = lens _bTransaction (\ s a -> s{_bTransaction = a})+ . mapping _Bytes++-- | The names of the documents to retrieve. In the format:+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+-- The request will fail if any of the document is not a child resource of+-- the given \`database\`. Duplicate names will be elided.+bDocuments :: Lens' BatchGetDocumentsRequest [Text]+bDocuments+ = lens _bDocuments (\ s a -> s{_bDocuments = a}) .+ _Default+ . _Coerce++-- | The fields to return. If not set, returns all fields. If a document has+-- a field that is not present in this mask, that field will not be+-- returned in the response.+bMask :: Lens' BatchGetDocumentsRequest (Maybe DocumentMask)+bMask = lens _bMask (\ s a -> s{_bMask = a})++instance FromJSON BatchGetDocumentsRequest where+ parseJSON+ = withObject "BatchGetDocumentsRequest"+ (\ o ->+ BatchGetDocumentsRequest' <$>+ (o .:? "readTime") <*> (o .:? "newTransaction") <*>+ (o .:? "transaction")+ <*> (o .:? "documents" .!= mempty)+ <*> (o .:? "mask"))++instance ToJSON BatchGetDocumentsRequest where+ toJSON BatchGetDocumentsRequest'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _bReadTime,+ ("newTransaction" .=) <$> _bNewTransaction,+ ("transaction" .=) <$> _bTransaction,+ ("documents" .=) <$> _bDocuments,+ ("mask" .=) <$> _bMask])++-- | A Firestore document. Must not exceed 1 MiB - 4 bytes.+--+-- /See:/ 'document' smart constructor.+data Document =+ Document'+ { _dUpdateTime :: !(Maybe DateTime')+ , _dName :: !(Maybe Text)+ , _dCreateTime :: !(Maybe DateTime')+ , _dFields :: !(Maybe DocumentFields)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Document' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dUpdateTime'+--+-- * 'dName'+--+-- * 'dCreateTime'+--+-- * 'dFields'+document+ :: Document+document =+ Document'+ { _dUpdateTime = Nothing+ , _dName = Nothing+ , _dCreateTime = Nothing+ , _dFields = Nothing+ }+++-- | Output only. The time at which the document was last changed. This value+-- is initially set to the \`create_time\` then increases monotonically+-- with each change to the document. It can also be compared to values from+-- other documents and the \`read_time\` of a query.+dUpdateTime :: Lens' Document (Maybe UTCTime)+dUpdateTime+ = lens _dUpdateTime (\ s a -> s{_dUpdateTime = a}) .+ mapping _DateTime++-- | The resource name of the document, for example+-- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.+dName :: Lens' Document (Maybe Text)+dName = lens _dName (\ s a -> s{_dName = a})++-- | Output only. The time at which the document was created. This value+-- increases monotonically when a document is deleted then recreated. It+-- can also be compared to values from other documents and the+-- \`read_time\` of a query.+dCreateTime :: Lens' Document (Maybe UTCTime)+dCreateTime+ = lens _dCreateTime (\ s a -> s{_dCreateTime = a}) .+ mapping _DateTime++-- | The document\'s fields. The map keys represent field names. A simple+-- field name contains only characters \`a\` to \`z\`, \`A\` to \`Z\`,+-- \`0\` to \`9\`, or \`_\`, and must not start with \`0\` to \`9\`. For+-- example, \`foo_bar_17\`. Field names matching the regular expression+-- \`__.*__\` are reserved. Reserved field names are forbidden except in+-- certain documented contexts. The map keys, represented as UTF-8, must+-- not exceed 1,500 bytes and cannot be empty. Field paths may be used in+-- other contexts to refer to structured fields defined here. For+-- \`map_value\`, the field path is represented by the simple or quoted+-- field names of the containing fields, delimited by \`.\`. For example,+-- the structured field \`\"foo\" : { map_value: { \"x&y\" : {+-- string_value: \"hello\" }}}\` would be represented by the field path+-- \`foo.x&y\`. Within a field path, a quoted field name starts and ends+-- with \`\` \` \`\` and may contain any character. Some characters,+-- including \`\` \` \`\`, must be escaped using a \`\\\`. For example,+-- \`\` \`x&y\` \`\` represents \`x&y\` and \`\` \`bak\\\`tik\` \`\`+-- represents \`\` bak\`tik \`\`.+dFields :: Lens' Document (Maybe DocumentFields)+dFields = lens _dFields (\ s a -> s{_dFields = a})++instance FromJSON Document where+ parseJSON+ = withObject "Document"+ (\ o ->+ Document' <$>+ (o .:? "updateTime") <*> (o .:? "name") <*>+ (o .:? "createTime")+ <*> (o .:? "fields"))++instance ToJSON Document where+ toJSON Document'{..}+ = object+ (catMaybes+ [("updateTime" .=) <$> _dUpdateTime,+ ("name" .=) <$> _dName,+ ("createTime" .=) <$> _dCreateTime,+ ("fields" .=) <$> _dFields])++-- | An array value.+--+-- /See:/ 'arrayValue' smart constructor.+newtype ArrayValue =+ ArrayValue'+ { _avValues :: Maybe [Value]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ArrayValue' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'avValues'+arrayValue+ :: ArrayValue+arrayValue = ArrayValue' {_avValues = Nothing}+++-- | Values in the array.+avValues :: Lens' ArrayValue [Value]+avValues+ = lens _avValues (\ s a -> s{_avValues = a}) .+ _Default+ . _Coerce++instance FromJSON ArrayValue where+ parseJSON+ = withObject "ArrayValue"+ (\ o -> ArrayValue' <$> (o .:? "values" .!= mempty))++instance ToJSON ArrayValue where+ toJSON ArrayValue'{..}+ = object (catMaybes [("values" .=) <$> _avValues])++-- | The response for Firestore.Commit.+--+-- /See:/ 'commitResponse' smart constructor.+data CommitResponse =+ CommitResponse'+ { _crCommitTime :: !(Maybe DateTime')+ , _crWriteResults :: !(Maybe [WriteResult])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CommitResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crCommitTime'+--+-- * 'crWriteResults'+commitResponse+ :: CommitResponse+commitResponse =+ CommitResponse' {_crCommitTime = Nothing, _crWriteResults = Nothing}+++-- | The time at which the commit occurred.+crCommitTime :: Lens' CommitResponse (Maybe UTCTime)+crCommitTime+ = lens _crCommitTime (\ s a -> s{_crCommitTime = a})+ . mapping _DateTime++-- | The result of applying the writes. This i-th write result corresponds to+-- the i-th write in the request.+crWriteResults :: Lens' CommitResponse [WriteResult]+crWriteResults+ = lens _crWriteResults+ (\ s a -> s{_crWriteResults = a})+ . _Default+ . _Coerce++instance FromJSON CommitResponse where+ parseJSON+ = withObject "CommitResponse"+ (\ o ->+ CommitResponse' <$>+ (o .:? "commitTime") <*>+ (o .:? "writeResults" .!= mempty))++instance ToJSON CommitResponse where+ toJSON CommitResponse'{..}+ = object+ (catMaybes+ [("commitTime" .=) <$> _crCommitTime,+ ("writeResults" .=) <$> _crWriteResults])++-- | The response for Firestore.Listen.+--+-- /See:/ 'listenResponse' smart constructor.+data ListenResponse =+ ListenResponse'+ { _lrTargetChange :: !(Maybe TargetChange)+ , _lrDocumentRemove :: !(Maybe DocumentRemove)+ , _lrDocumentChange :: !(Maybe DocumentChange)+ , _lrFilter :: !(Maybe ExistenceFilter)+ , _lrDocumentDelete :: !(Maybe DocumentDelete)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListenResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrTargetChange'+--+-- * 'lrDocumentRemove'+--+-- * 'lrDocumentChange'+--+-- * 'lrFilter'+--+-- * 'lrDocumentDelete'+listenResponse+ :: ListenResponse+listenResponse =+ ListenResponse'+ { _lrTargetChange = Nothing+ , _lrDocumentRemove = Nothing+ , _lrDocumentChange = Nothing+ , _lrFilter = Nothing+ , _lrDocumentDelete = Nothing+ }+++-- | Targets have changed.+lrTargetChange :: Lens' ListenResponse (Maybe TargetChange)+lrTargetChange+ = lens _lrTargetChange+ (\ s a -> s{_lrTargetChange = a})++-- | A Document has been removed from a target (because it is no longer+-- relevant to that target).+lrDocumentRemove :: Lens' ListenResponse (Maybe DocumentRemove)+lrDocumentRemove+ = lens _lrDocumentRemove+ (\ s a -> s{_lrDocumentRemove = a})++-- | A Document has changed.+lrDocumentChange :: Lens' ListenResponse (Maybe DocumentChange)+lrDocumentChange+ = lens _lrDocumentChange+ (\ s a -> s{_lrDocumentChange = a})++-- | A filter to apply to the set of documents previously returned for the+-- given target. Returned when documents may have been removed from the+-- given target, but the exact documents are unknown.+lrFilter :: Lens' ListenResponse (Maybe ExistenceFilter)+lrFilter = lens _lrFilter (\ s a -> s{_lrFilter = a})++-- | A Document has been deleted.+lrDocumentDelete :: Lens' ListenResponse (Maybe DocumentDelete)+lrDocumentDelete+ = lens _lrDocumentDelete+ (\ s a -> s{_lrDocumentDelete = a})++instance FromJSON ListenResponse where+ parseJSON+ = withObject "ListenResponse"+ (\ o ->+ ListenResponse' <$>+ (o .:? "targetChange") <*> (o .:? "documentRemove")+ <*> (o .:? "documentChange")+ <*> (o .:? "filter")+ <*> (o .:? "documentDelete"))++instance ToJSON ListenResponse where+ toJSON ListenResponse'{..}+ = object+ (catMaybes+ [("targetChange" .=) <$> _lrTargetChange,+ ("documentRemove" .=) <$> _lrDocumentRemove,+ ("documentChange" .=) <$> _lrDocumentChange,+ ("filter" .=) <$> _lrFilter,+ ("documentDelete" .=) <$> _lrDocumentDelete])++-- | A filter on a specific field.+--+-- /See:/ 'fieldFilter' smart constructor.+data FieldFilter =+ FieldFilter'+ { _ffOp :: !(Maybe FieldFilterOp)+ , _ffField :: !(Maybe FieldReference)+ , _ffValue :: !(Maybe Value)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FieldFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ffOp'+--+-- * 'ffField'+--+-- * 'ffValue'+fieldFilter+ :: FieldFilter+fieldFilter =+ FieldFilter' {_ffOp = Nothing, _ffField = Nothing, _ffValue = Nothing}+++-- | The operator to filter by.+ffOp :: Lens' FieldFilter (Maybe FieldFilterOp)+ffOp = lens _ffOp (\ s a -> s{_ffOp = a})++-- | The field to filter by.+ffField :: Lens' FieldFilter (Maybe FieldReference)+ffField = lens _ffField (\ s a -> s{_ffField = a})++-- | The value to compare to.+ffValue :: Lens' FieldFilter (Maybe Value)+ffValue = lens _ffValue (\ s a -> s{_ffValue = a})++instance FromJSON FieldFilter where+ parseJSON+ = withObject "FieldFilter"+ (\ o ->+ FieldFilter' <$>+ (o .:? "op") <*> (o .:? "field") <*> (o .:? "value"))++instance ToJSON FieldFilter where+ toJSON FieldFilter'{..}+ = object+ (catMaybes+ [("op" .=) <$> _ffOp, ("field" .=) <$> _ffField,+ ("value" .=) <$> _ffValue])++-- | The normal response of the operation in case of success. If the original+-- method returns no data on success, such as \`Delete\`, the response is+-- \`google.protobuf.Empty\`. If the original method is standard+-- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.+-- For other methods, the response should have the type \`XxxResponse\`,+-- where \`Xxx\` is the original method name. For example, if the original+-- method name is \`TakeSnapshot()\`, the inferred response type is+-- \`TakeSnapshotResponse\`.+--+-- /See:/ 'googleLongrunningOperationResponse' smart constructor.+newtype GoogleLongrunningOperationResponse =+ GoogleLongrunningOperationResponse'+ { _glorAddtional :: HashMap Text JSONValue+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleLongrunningOperationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'glorAddtional'+googleLongrunningOperationResponse+ :: HashMap Text JSONValue -- ^ 'glorAddtional'+ -> GoogleLongrunningOperationResponse+googleLongrunningOperationResponse pGlorAddtional_ =+ GoogleLongrunningOperationResponse'+ {_glorAddtional = _Coerce # pGlorAddtional_}+++-- | Properties of the object. Contains field \'type with type URL.+glorAddtional :: Lens' GoogleLongrunningOperationResponse (HashMap Text JSONValue)+glorAddtional+ = lens _glorAddtional+ (\ s a -> s{_glorAddtional = a})+ . _Coerce++instance FromJSON GoogleLongrunningOperationResponse+ where+ parseJSON+ = withObject "GoogleLongrunningOperationResponse"+ (\ o ->+ GoogleLongrunningOperationResponse' <$>+ (parseJSONObject o))++instance ToJSON GoogleLongrunningOperationResponse+ where+ toJSON = toJSON . _glorAddtional++-- | The response for Firestore.ListDocuments.+--+-- /See:/ 'listDocumentsResponse' smart constructor.+data ListDocumentsResponse =+ ListDocumentsResponse'+ { _ldrNextPageToken :: !(Maybe Text)+ , _ldrDocuments :: !(Maybe [Document])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListDocumentsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ldrNextPageToken'+--+-- * 'ldrDocuments'+listDocumentsResponse+ :: ListDocumentsResponse+listDocumentsResponse =+ ListDocumentsResponse' {_ldrNextPageToken = Nothing, _ldrDocuments = Nothing}+++-- | The next page token.+ldrNextPageToken :: Lens' ListDocumentsResponse (Maybe Text)+ldrNextPageToken+ = lens _ldrNextPageToken+ (\ s a -> s{_ldrNextPageToken = a})++-- | The Documents found.+ldrDocuments :: Lens' ListDocumentsResponse [Document]+ldrDocuments+ = lens _ldrDocuments (\ s a -> s{_ldrDocuments = a})+ . _Default+ . _Coerce++instance FromJSON ListDocumentsResponse where+ parseJSON+ = withObject "ListDocumentsResponse"+ (\ o ->+ ListDocumentsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "documents" .!= mempty))++instance ToJSON ListDocumentsResponse where+ toJSON ListDocumentsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _ldrNextPageToken,+ ("documents" .=) <$> _ldrDocuments])++-- | Returned in the google.longrunning.Operation response field.+--+-- /See:/ 'googleFirestoreAdminV1ExportDocumentsResponse' smart constructor.+newtype GoogleFirestoreAdminV1ExportDocumentsResponse =+ GoogleFirestoreAdminV1ExportDocumentsResponse'+ { _gOutputURIPrefix :: Maybe Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1ExportDocumentsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gOutputURIPrefix'+googleFirestoreAdminV1ExportDocumentsResponse+ :: GoogleFirestoreAdminV1ExportDocumentsResponse+googleFirestoreAdminV1ExportDocumentsResponse =+ GoogleFirestoreAdminV1ExportDocumentsResponse' {_gOutputURIPrefix = Nothing}+++-- | Location of the output files. This can be used to begin an import into+-- Cloud Firestore (this project or another project) after the operation+-- completes successfully.+gOutputURIPrefix :: Lens' GoogleFirestoreAdminV1ExportDocumentsResponse (Maybe Text)+gOutputURIPrefix+ = lens _gOutputURIPrefix+ (\ s a -> s{_gOutputURIPrefix = a})++instance FromJSON+ GoogleFirestoreAdminV1ExportDocumentsResponse+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1ExportDocumentsResponse"+ (\ o ->+ GoogleFirestoreAdminV1ExportDocumentsResponse' <$>+ (o .:? "outputUriPrefix"))++instance ToJSON+ GoogleFirestoreAdminV1ExportDocumentsResponse+ where+ toJSON+ GoogleFirestoreAdminV1ExportDocumentsResponse'{..}+ = object+ (catMaybes+ [("outputUriPrefix" .=) <$> _gOutputURIPrefix])++-- | The projection of document\'s fields to return.+--+-- /See:/ 'projection' smart constructor.+newtype Projection =+ Projection'+ { _pFields :: Maybe [FieldReference]+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Projection' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pFields'+projection+ :: Projection+projection = Projection' {_pFields = Nothing}+++-- | The fields to return. If empty, all fields are returned. To only return+-- the name of the document, use \`[\'__name__\']\`.+pFields :: Lens' Projection [FieldReference]+pFields+ = lens _pFields (\ s a -> s{_pFields = a}) . _Default+ . _Coerce++instance FromJSON Projection where+ parseJSON+ = withObject "Projection"+ (\ o -> Projection' <$> (o .:? "fields" .!= mempty))++instance ToJSON Projection where+ toJSON Projection'{..}+ = object (catMaybes [("fields" .=) <$> _pFields])++-- | A filter.+--+-- /See:/ 'filter'' smart constructor.+data Filter =+ Filter'+ { _fCompositeFilter :: !(Maybe CompositeFilter)+ , _fFieldFilter :: !(Maybe FieldFilter)+ , _fUnaryFilter :: !(Maybe UnaryFilter)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Filter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fCompositeFilter'+--+-- * 'fFieldFilter'+--+-- * 'fUnaryFilter'+filter'+ :: Filter+filter' =+ Filter'+ { _fCompositeFilter = Nothing+ , _fFieldFilter = Nothing+ , _fUnaryFilter = Nothing+ }+++-- | A composite filter.+fCompositeFilter :: Lens' Filter (Maybe CompositeFilter)+fCompositeFilter+ = lens _fCompositeFilter+ (\ s a -> s{_fCompositeFilter = a})++-- | A filter on a document field.+fFieldFilter :: Lens' Filter (Maybe FieldFilter)+fFieldFilter+ = lens _fFieldFilter (\ s a -> s{_fFieldFilter = a})++-- | A filter that takes exactly one argument.+fUnaryFilter :: Lens' Filter (Maybe UnaryFilter)+fUnaryFilter+ = lens _fUnaryFilter (\ s a -> s{_fUnaryFilter = a})++instance FromJSON Filter where+ parseJSON+ = withObject "Filter"+ (\ o ->+ Filter' <$>+ (o .:? "compositeFilter") <*> (o .:? "fieldFilter")+ <*> (o .:? "unaryFilter"))++instance ToJSON Filter where+ toJSON Filter'{..}+ = object+ (catMaybes+ [("compositeFilter" .=) <$> _fCompositeFilter,+ ("fieldFilter" .=) <$> _fFieldFilter,+ ("unaryFilter" .=) <$> _fUnaryFilter])++-- | Metadata for google.longrunning.Operation results from+-- FirestoreAdmin.CreateIndex.+--+-- /See:/ 'googleFirestoreAdminV1IndexOperationMetadata' smart constructor.+data GoogleFirestoreAdminV1IndexOperationMetadata =+ GoogleFirestoreAdminV1IndexOperationMetadata'+ { _gfaviomProgressBytes :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfaviomState :: !(Maybe GoogleFirestoreAdminV1IndexOperationMetadataState)+ , _gfaviomStartTime :: !(Maybe DateTime')+ , _gfaviomProgressDocuments :: !(Maybe GoogleFirestoreAdminV1Progress)+ , _gfaviomEndTime :: !(Maybe DateTime')+ , _gfaviomIndex :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleFirestoreAdminV1IndexOperationMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gfaviomProgressBytes'+--+-- * 'gfaviomState'+--+-- * 'gfaviomStartTime'+--+-- * 'gfaviomProgressDocuments'+--+-- * 'gfaviomEndTime'+--+-- * 'gfaviomIndex'+googleFirestoreAdminV1IndexOperationMetadata+ :: GoogleFirestoreAdminV1IndexOperationMetadata+googleFirestoreAdminV1IndexOperationMetadata =+ GoogleFirestoreAdminV1IndexOperationMetadata'+ { _gfaviomProgressBytes = Nothing+ , _gfaviomState = Nothing+ , _gfaviomStartTime = Nothing+ , _gfaviomProgressDocuments = Nothing+ , _gfaviomEndTime = Nothing+ , _gfaviomIndex = Nothing+ }+++-- | The progress, in bytes, of this operation.+gfaviomProgressBytes :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfaviomProgressBytes+ = lens _gfaviomProgressBytes+ (\ s a -> s{_gfaviomProgressBytes = a})++-- | The state of the operation.+gfaviomState :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1IndexOperationMetadataState)+gfaviomState+ = lens _gfaviomState (\ s a -> s{_gfaviomState = a})++-- | The time this operation started.+gfaviomStartTime :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe UTCTime)+gfaviomStartTime+ = lens _gfaviomStartTime+ (\ s a -> s{_gfaviomStartTime = a})+ . mapping _DateTime++-- | The progress, in documents, of this operation.+gfaviomProgressDocuments :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe GoogleFirestoreAdminV1Progress)+gfaviomProgressDocuments+ = lens _gfaviomProgressDocuments+ (\ s a -> s{_gfaviomProgressDocuments = a})++-- | The time this operation completed. Will be unset if operation still in+-- progress.+gfaviomEndTime :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe UTCTime)+gfaviomEndTime+ = lens _gfaviomEndTime+ (\ s a -> s{_gfaviomEndTime = a})+ . mapping _DateTime++-- | The index resource that this operation is acting on. For example:+-- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\/indexes\/{index_id}\`+gfaviomIndex :: Lens' GoogleFirestoreAdminV1IndexOperationMetadata (Maybe Text)+gfaviomIndex+ = lens _gfaviomIndex (\ s a -> s{_gfaviomIndex = a})++instance FromJSON+ GoogleFirestoreAdminV1IndexOperationMetadata+ where+ parseJSON+ = withObject+ "GoogleFirestoreAdminV1IndexOperationMetadata"+ (\ o ->+ GoogleFirestoreAdminV1IndexOperationMetadata' <$>+ (o .:? "progressBytes") <*> (o .:? "state") <*>+ (o .:? "startTime")+ <*> (o .:? "progressDocuments")+ <*> (o .:? "endTime")+ <*> (o .:? "index"))++instance ToJSON+ GoogleFirestoreAdminV1IndexOperationMetadata+ where+ toJSON+ GoogleFirestoreAdminV1IndexOperationMetadata'{..}+ = object+ (catMaybes+ [("progressBytes" .=) <$> _gfaviomProgressBytes,+ ("state" .=) <$> _gfaviomState,+ ("startTime" .=) <$> _gfaviomStartTime,+ ("progressDocuments" .=) <$>+ _gfaviomProgressDocuments,+ ("endTime" .=) <$> _gfaviomEndTime,+ ("index" .=) <$> _gfaviomIndex])++-- | Cross-service attributes for the location. For example+-- {\"cloud.googleapis.com\/region\": \"us-east1\"}+--+-- /See:/ 'locationLabels' smart constructor.+newtype LocationLabels =+ LocationLabels'+ { _llAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'LocationLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'llAddtional'+locationLabels+ :: HashMap Text Text -- ^ 'llAddtional'+ -> LocationLabels+locationLabels pLlAddtional_ =+ LocationLabels' {_llAddtional = _Coerce # pLlAddtional_}+++llAddtional :: Lens' LocationLabels (HashMap Text Text)+llAddtional+ = lens _llAddtional (\ s a -> s{_llAddtional = a}) .+ _Coerce++instance FromJSON LocationLabels where+ parseJSON+ = withObject "LocationLabels"+ (\ o -> LocationLabels' <$> (parseJSONObject o))++instance ToJSON LocationLabels where+ toJSON = toJSON . _llAddtional++-- | A request for Firestore.Listen+--+-- /See:/ 'listenRequest' smart constructor.+data ListenRequest =+ ListenRequest'+ { _lrRemoveTarget :: !(Maybe (Textual Int32))+ , _lrLabels :: !(Maybe ListenRequestLabels)+ , _lrAddTarget :: !(Maybe Target)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListenRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lrRemoveTarget'+--+-- * 'lrLabels'+--+-- * 'lrAddTarget'+listenRequest+ :: ListenRequest+listenRequest =+ ListenRequest'+ {_lrRemoveTarget = Nothing, _lrLabels = Nothing, _lrAddTarget = Nothing}+++-- | The ID of a target to remove from this stream.+lrRemoveTarget :: Lens' ListenRequest (Maybe Int32)+lrRemoveTarget+ = lens _lrRemoveTarget+ (\ s a -> s{_lrRemoveTarget = a})+ . mapping _Coerce++-- | Labels associated with this target change.+lrLabels :: Lens' ListenRequest (Maybe ListenRequestLabels)+lrLabels = lens _lrLabels (\ s a -> s{_lrLabels = a})++-- | A target to add to this stream.+lrAddTarget :: Lens' ListenRequest (Maybe Target)+lrAddTarget+ = lens _lrAddTarget (\ s a -> s{_lrAddTarget = a})++instance FromJSON ListenRequest where+ parseJSON+ = withObject "ListenRequest"+ (\ o ->+ ListenRequest' <$>+ (o .:? "removeTarget") <*> (o .:? "labels") <*>+ (o .:? "addTarget"))++instance ToJSON ListenRequest where+ toJSON ListenRequest'{..}+ = object+ (catMaybes+ [("removeTarget" .=) <$> _lrRemoveTarget,+ ("labels" .=) <$> _lrLabels,+ ("addTarget" .=) <$> _lrAddTarget])++-- | The request for Firestore.Commit.+--+-- /See:/ 'commitRequest' smart constructor.+data CommitRequest =+ CommitRequest'+ { _crTransaction :: !(Maybe Bytes)+ , _crWrites :: !(Maybe [Write])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CommitRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crTransaction'+--+-- * 'crWrites'+commitRequest+ :: CommitRequest+commitRequest = CommitRequest' {_crTransaction = Nothing, _crWrites = Nothing}+++-- | If set, applies all writes in this transaction, and commits it.+crTransaction :: Lens' CommitRequest (Maybe ByteString)+crTransaction+ = lens _crTransaction+ (\ s a -> s{_crTransaction = a})+ . mapping _Bytes++-- | The writes to apply. Always executed atomically and in order.+crWrites :: Lens' CommitRequest [Write]+crWrites+ = lens _crWrites (\ s a -> s{_crWrites = a}) .+ _Default+ . _Coerce++instance FromJSON CommitRequest where+ parseJSON+ = withObject "CommitRequest"+ (\ o ->+ CommitRequest' <$>+ (o .:? "transaction") <*>+ (o .:? "writes" .!= mempty))++instance ToJSON CommitRequest where+ toJSON CommitRequest'{..}+ = object+ (catMaybes+ [("transaction" .=) <$> _crTransaction,+ ("writes" .=) <$> _crWrites])++-- | Service-specific metadata. For example the available capacity at the+-- given location.+--+-- /See:/ 'locationMetadata' smart constructor.+newtype LocationMetadata =+ LocationMetadata'+ { _lmAddtional :: HashMap Text JSONValue+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'LocationMetadata' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lmAddtional'+locationMetadata+ :: HashMap Text JSONValue -- ^ 'lmAddtional'+ -> LocationMetadata+locationMetadata pLmAddtional_ =+ LocationMetadata' {_lmAddtional = _Coerce # pLmAddtional_}+++-- | Properties of the object. Contains field \'type with type URL.+lmAddtional :: Lens' LocationMetadata (HashMap Text JSONValue)+lmAddtional+ = lens _lmAddtional (\ s a -> s{_lmAddtional = a}) .+ _Coerce++instance FromJSON LocationMetadata where+ parseJSON+ = withObject "LocationMetadata"+ (\ o -> LocationMetadata' <$> (parseJSONObject o))++instance ToJSON LocationMetadata where+ toJSON = toJSON . _lmAddtional++-- | The response message for Operations.ListOperations.+--+-- /See:/ 'googleLongrunningListOperationsResponse' smart constructor.+data GoogleLongrunningListOperationsResponse =+ GoogleLongrunningListOperationsResponse'+ { _gllorNextPageToken :: !(Maybe Text)+ , _gllorOperations :: !(Maybe [GoogleLongrunningOperation])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleLongrunningListOperationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gllorNextPageToken'+--+-- * 'gllorOperations'+googleLongrunningListOperationsResponse+ :: GoogleLongrunningListOperationsResponse+googleLongrunningListOperationsResponse =+ GoogleLongrunningListOperationsResponse'+ {_gllorNextPageToken = Nothing, _gllorOperations = Nothing}+++-- | The standard List next-page token.+gllorNextPageToken :: Lens' GoogleLongrunningListOperationsResponse (Maybe Text)+gllorNextPageToken+ = lens _gllorNextPageToken+ (\ s a -> s{_gllorNextPageToken = a})++-- | A list of operations that matches the specified filter in the request.+gllorOperations :: Lens' GoogleLongrunningListOperationsResponse [GoogleLongrunningOperation]+gllorOperations+ = lens _gllorOperations+ (\ s a -> s{_gllorOperations = a})+ . _Default+ . _Coerce++instance FromJSON+ GoogleLongrunningListOperationsResponse+ where+ parseJSON+ = withObject+ "GoogleLongrunningListOperationsResponse"+ (\ o ->+ GoogleLongrunningListOperationsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "operations" .!= mempty))++instance ToJSON+ GoogleLongrunningListOperationsResponse+ where+ toJSON GoogleLongrunningListOperationsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _gllorNextPageToken,+ ("operations" .=) <$> _gllorOperations])++-- | A selection of a collection, such as \`messages as m1\`.+--+-- /See:/ 'collectionSelector' smart constructor.+data CollectionSelector =+ CollectionSelector'+ { _csAllDescendants :: !(Maybe Bool)+ , _csCollectionId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'CollectionSelector' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csAllDescendants'+--+-- * 'csCollectionId'+collectionSelector+ :: CollectionSelector+collectionSelector =+ CollectionSelector' {_csAllDescendants = Nothing, _csCollectionId = Nothing}+++-- | When false, selects only collections that are immediate children of the+-- \`parent\` specified in the containing \`RunQueryRequest\`. When true,+-- selects all descendant collections.+csAllDescendants :: Lens' CollectionSelector (Maybe Bool)+csAllDescendants+ = lens _csAllDescendants+ (\ s a -> s{_csAllDescendants = a})++-- | The collection ID. When set, selects only collections with this ID.+csCollectionId :: Lens' CollectionSelector (Maybe Text)+csCollectionId+ = lens _csCollectionId+ (\ s a -> s{_csCollectionId = a})++instance FromJSON CollectionSelector where+ parseJSON+ = withObject "CollectionSelector"+ (\ o ->+ CollectionSelector' <$>+ (o .:? "allDescendants") <*> (o .:? "collectionId"))++instance ToJSON CollectionSelector where+ toJSON CollectionSelector'{..}+ = object+ (catMaybes+ [("allDescendants" .=) <$> _csAllDescendants,+ ("collectionId" .=) <$> _csCollectionId])++-- | The request for Firestore.ListCollectionIds.+--+-- /See:/ 'listCollectionIdsRequest' smart constructor.+data ListCollectionIdsRequest =+ ListCollectionIdsRequest'+ { _lcirPageToken :: !(Maybe Text)+ , _lcirPageSize :: !(Maybe (Textual Int32))+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ListCollectionIdsRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lcirPageToken'+--+-- * 'lcirPageSize'+listCollectionIdsRequest+ :: ListCollectionIdsRequest+listCollectionIdsRequest =+ ListCollectionIdsRequest' {_lcirPageToken = Nothing, _lcirPageSize = Nothing}+++-- | A page token. Must be a value from ListCollectionIdsResponse.+lcirPageToken :: Lens' ListCollectionIdsRequest (Maybe Text)+lcirPageToken+ = lens _lcirPageToken+ (\ s a -> s{_lcirPageToken = a})++-- | The maximum number of results to return.+lcirPageSize :: Lens' ListCollectionIdsRequest (Maybe Int32)+lcirPageSize+ = lens _lcirPageSize (\ s a -> s{_lcirPageSize = a})+ . mapping _Coerce++instance FromJSON ListCollectionIdsRequest where+ parseJSON+ = withObject "ListCollectionIdsRequest"+ (\ o ->+ ListCollectionIdsRequest' <$>+ (o .:? "pageToken") <*> (o .:? "pageSize"))++instance ToJSON ListCollectionIdsRequest where+ toJSON ListCollectionIdsRequest'{..}+ = object+ (catMaybes+ [("pageToken" .=) <$> _lcirPageToken,+ ("pageSize" .=) <$> _lcirPageSize])++-- | The response for Firestore.Write.+--+-- /See:/ 'writeResponse' smart constructor.+data WriteResponse =+ WriteResponse'+ { _wStreamToken :: !(Maybe Bytes)+ , _wCommitTime :: !(Maybe DateTime')+ , _wWriteResults :: !(Maybe [WriteResult])+ , _wStreamId :: !(Maybe Text)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WriteResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wStreamToken'+--+-- * 'wCommitTime'+--+-- * 'wWriteResults'+--+-- * 'wStreamId'+writeResponse+ :: WriteResponse+writeResponse =+ WriteResponse'+ { _wStreamToken = Nothing+ , _wCommitTime = Nothing+ , _wWriteResults = Nothing+ , _wStreamId = Nothing+ }+++-- | A token that represents the position of this response in the stream.+-- This can be used by a client to resume the stream at this point. This+-- field is always set.+wStreamToken :: Lens' WriteResponse (Maybe ByteString)+wStreamToken+ = lens _wStreamToken (\ s a -> s{_wStreamToken = a})+ . mapping _Bytes++-- | The time at which the commit occurred.+wCommitTime :: Lens' WriteResponse (Maybe UTCTime)+wCommitTime+ = lens _wCommitTime (\ s a -> s{_wCommitTime = a}) .+ mapping _DateTime++-- | The result of applying the writes. This i-th write result corresponds to+-- the i-th write in the request.+wWriteResults :: Lens' WriteResponse [WriteResult]+wWriteResults+ = lens _wWriteResults+ (\ s a -> s{_wWriteResults = a})+ . _Default+ . _Coerce++-- | The ID of the stream. Only set on the first message, when a new stream+-- was created.+wStreamId :: Lens' WriteResponse (Maybe Text)+wStreamId+ = lens _wStreamId (\ s a -> s{_wStreamId = a})++instance FromJSON WriteResponse where+ parseJSON+ = withObject "WriteResponse"+ (\ o ->+ WriteResponse' <$>+ (o .:? "streamToken") <*> (o .:? "commitTime") <*>+ (o .:? "writeResults" .!= mempty)+ <*> (o .:? "streamId"))++instance ToJSON WriteResponse where+ toJSON WriteResponse'{..}+ = object+ (catMaybes+ [("streamToken" .=) <$> _wStreamToken,+ ("commitTime" .=) <$> _wCommitTime,+ ("writeResults" .=) <$> _wWriteResults,+ ("streamId" .=) <$> _wStreamId])++-- | An order on a field.+--+-- /See:/ 'order' smart constructor.+data Order =+ Order'+ { _oField :: !(Maybe FieldReference)+ , _oDirection :: !(Maybe OrderDirection)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Order' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oField'+--+-- * 'oDirection'+order+ :: Order+order = Order' {_oField = Nothing, _oDirection = Nothing}+++-- | The field to order by.+oField :: Lens' Order (Maybe FieldReference)+oField = lens _oField (\ s a -> s{_oField = a})++-- | The direction to order by. Defaults to \`ASCENDING\`.+oDirection :: Lens' Order (Maybe OrderDirection)+oDirection+ = lens _oDirection (\ s a -> s{_oDirection = a})++instance FromJSON Order where+ parseJSON+ = withObject "Order"+ (\ o ->+ Order' <$> (o .:? "field") <*> (o .:? "direction"))++instance ToJSON Order where+ toJSON Order'{..}+ = object+ (catMaybes+ [("field" .=) <$> _oField,+ ("direction" .=) <$> _oDirection])++-- | A Document has been deleted. May be the result of multiple writes,+-- including updates, the last of which deleted the Document. Multiple+-- DocumentDelete messages may be returned for the same logical delete, if+-- multiple targets are affected.+--+-- /See:/ 'documentDelete' smart constructor.+data DocumentDelete =+ DocumentDelete'+ { _ddReadTime :: !(Maybe DateTime')+ , _ddDocument :: !(Maybe Text)+ , _ddRemovedTargetIds :: !(Maybe [Textual Int32])+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ddReadTime'+--+-- * 'ddDocument'+--+-- * 'ddRemovedTargetIds'+documentDelete+ :: DocumentDelete+documentDelete =+ DocumentDelete'+ { _ddReadTime = Nothing+ , _ddDocument = Nothing+ , _ddRemovedTargetIds = Nothing+ }+++-- | The read timestamp at which the delete was observed. Greater or equal to+-- the \`commit_time\` of the delete.+ddReadTime :: Lens' DocumentDelete (Maybe UTCTime)+ddReadTime+ = lens _ddReadTime (\ s a -> s{_ddReadTime = a}) .+ mapping _DateTime++-- | The resource name of the Document that was deleted.+ddDocument :: Lens' DocumentDelete (Maybe Text)+ddDocument+ = lens _ddDocument (\ s a -> s{_ddDocument = a})++-- | A set of target IDs for targets that previously matched this entity.+ddRemovedTargetIds :: Lens' DocumentDelete [Int32]+ddRemovedTargetIds+ = lens _ddRemovedTargetIds+ (\ s a -> s{_ddRemovedTargetIds = a})+ . _Default+ . _Coerce++instance FromJSON DocumentDelete where+ parseJSON+ = withObject "DocumentDelete"+ (\ o ->+ DocumentDelete' <$>+ (o .:? "readTime") <*> (o .:? "document") <*>+ (o .:? "removedTargetIds" .!= mempty))++instance ToJSON DocumentDelete where+ toJSON DocumentDelete'{..}+ = object+ (catMaybes+ [("readTime" .=) <$> _ddReadTime,+ ("document" .=) <$> _ddDocument,+ ("removedTargetIds" .=) <$> _ddRemovedTargetIds])++-- | A transformation of a field of the document.+--+-- /See:/ 'fieldTransform' smart constructor.+data FieldTransform =+ FieldTransform'+ { _ftFieldPath :: !(Maybe Text)+ , _ftAppendMissingElements :: !(Maybe ArrayValue)+ , _ftMaximum :: !(Maybe Value)+ , _ftMinimum :: !(Maybe Value)+ , _ftSetToServerValue :: !(Maybe FieldTransformSetToServerValue)+ , _ftRemoveAllFromArray :: !(Maybe ArrayValue)+ , _ftIncrement :: !(Maybe Value)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'FieldTransform' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ftFieldPath'+--+-- * 'ftAppendMissingElements'+--+-- * 'ftMaximum'+--+-- * 'ftMinimum'+--+-- * 'ftSetToServerValue'+--+-- * 'ftRemoveAllFromArray'+--+-- * 'ftIncrement'+fieldTransform+ :: FieldTransform+fieldTransform =+ FieldTransform'+ { _ftFieldPath = Nothing+ , _ftAppendMissingElements = Nothing+ , _ftMaximum = Nothing+ , _ftMinimum = Nothing+ , _ftSetToServerValue = Nothing+ , _ftRemoveAllFromArray = Nothing+ , _ftIncrement = Nothing+ }+++-- | The path of the field. See Document.fields for the field path syntax+-- reference.+ftFieldPath :: Lens' FieldTransform (Maybe Text)+ftFieldPath+ = lens _ftFieldPath (\ s a -> s{_ftFieldPath = a})++-- | Append the given elements in order if they are not already present in+-- the current field value. If the field is not an array, or if the field+-- does not yet exist, it is first set to the empty array. Equivalent+-- numbers of different types (e.g. 3L and 3.0) are considered equal when+-- checking if a value is missing. NaN is equal to NaN, and Null is equal+-- to Null. If the input contains multiple equivalent values, only the+-- first will be considered. The corresponding transform_result will be the+-- null value.+ftAppendMissingElements :: Lens' FieldTransform (Maybe ArrayValue)+ftAppendMissingElements+ = lens _ftAppendMissingElements+ (\ s a -> s{_ftAppendMissingElements = a})++-- | Sets the field to the maximum of its current value and the given value.+-- This must be an integer or a double value. If the field is not an+-- integer or double, or if the field does not yet exist, the+-- transformation will set the field to the given value. If a maximum+-- operation is applied where the field and the input value are of mixed+-- types (that is - one is an integer and one is a double) the field takes+-- on the type of the larger operand. If the operands are equivalent (e.g.+-- 3 and 3.0), the field does not change. 0, 0.0, and -0.0 are all zero.+-- The maximum of a zero stored value and zero input value is always the+-- stored value. The maximum of any numeric value x and NaN is NaN.+ftMaximum :: Lens' FieldTransform (Maybe Value)+ftMaximum+ = lens _ftMaximum (\ s a -> s{_ftMaximum = a})++-- | Sets the field to the minimum of its current value and the given value.+-- This must be an integer or a double value. If the field is not an+-- integer or double, or if the field does not yet exist, the+-- transformation will set the field to the input value. If a minimum+-- operation is applied where the field and the input value are of mixed+-- types (that is - one is an integer and one is a double) the field takes+-- on the type of the smaller operand. If the operands are equivalent (e.g.+-- 3 and 3.0), the field does not change. 0, 0.0, and -0.0 are all zero.+-- The minimum of a zero stored value and zero input value is always the+-- stored value. The minimum of any numeric value x and NaN is NaN.+ftMinimum :: Lens' FieldTransform (Maybe Value)+ftMinimum+ = lens _ftMinimum (\ s a -> s{_ftMinimum = a})++-- | Sets the field to the given server value.+ftSetToServerValue :: Lens' FieldTransform (Maybe FieldTransformSetToServerValue)+ftSetToServerValue+ = lens _ftSetToServerValue+ (\ s a -> s{_ftSetToServerValue = a})++-- | Remove all of the given elements from the array in the field. If the+-- field is not an array, or if the field does not yet exist, it is set to+-- the empty array. Equivalent numbers of the different types (e.g. 3L and+-- 3.0) are considered equal when deciding whether an element should be+-- removed. NaN is equal to NaN, and Null is equal to Null. This will+-- remove all equivalent values if there are duplicates. The corresponding+-- transform_result will be the null value.+ftRemoveAllFromArray :: Lens' FieldTransform (Maybe ArrayValue)+ftRemoveAllFromArray+ = lens _ftRemoveAllFromArray+ (\ s a -> s{_ftRemoveAllFromArray = a})++-- | Adds the given value to the field\'s current value. This must be an+-- integer or a double value. If the field is not an integer or double, or+-- if the field does not yet exist, the transformation will set the field+-- to the given value. If either of the given value or the current field+-- value are doubles, both values will be interpreted as doubles. Double+-- arithmetic and representation of double values follow IEEE 754+-- semantics. If there is positive\/negative integer overflow, the field is+-- resolved to the largest magnitude positive\/negative integer.+ftIncrement :: Lens' FieldTransform (Maybe Value)+ftIncrement+ = lens _ftIncrement (\ s a -> s{_ftIncrement = a})++instance FromJSON FieldTransform where+ parseJSON+ = withObject "FieldTransform"+ (\ o ->+ FieldTransform' <$>+ (o .:? "fieldPath") <*>+ (o .:? "appendMissingElements")+ <*> (o .:? "maximum")+ <*> (o .:? "minimum")+ <*> (o .:? "setToServerValue")+ <*> (o .:? "removeAllFromArray")+ <*> (o .:? "increment"))++instance ToJSON FieldTransform where+ toJSON FieldTransform'{..}+ = object+ (catMaybes+ [("fieldPath" .=) <$> _ftFieldPath,+ ("appendMissingElements" .=) <$>+ _ftAppendMissingElements,+ ("maximum" .=) <$> _ftMaximum,+ ("minimum" .=) <$> _ftMinimum,+ ("setToServerValue" .=) <$> _ftSetToServerValue,+ ("removeAllFromArray" .=) <$> _ftRemoveAllFromArray,+ ("increment" .=) <$> _ftIncrement])++-- | The map\'s fields. The map keys represent field names. Field names+-- matching the regular expression \`__.*__\` are reserved. Reserved field+-- names are forbidden except in certain documented contexts. The map keys,+-- represented as UTF-8, must not exceed 1,500 bytes and cannot be empty.+--+-- /See:/ 'mapValueFields' smart constructor.+newtype MapValueFields =+ MapValueFields'+ { _mvfAddtional :: HashMap Text Value+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'MapValueFields' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mvfAddtional'+mapValueFields+ :: HashMap Text Value -- ^ 'mvfAddtional'+ -> MapValueFields+mapValueFields pMvfAddtional_ =+ MapValueFields' {_mvfAddtional = _Coerce # pMvfAddtional_}+++mvfAddtional :: Lens' MapValueFields (HashMap Text Value)+mvfAddtional+ = lens _mvfAddtional (\ s a -> s{_mvfAddtional = a})+ . _Coerce++instance FromJSON MapValueFields where+ parseJSON+ = withObject "MapValueFields"+ (\ o -> MapValueFields' <$> (parseJSONObject o))++instance ToJSON MapValueFields where+ toJSON = toJSON . _mvfAddtional++-- | The document\'s fields. The map keys represent field names. A simple+-- field name contains only characters \`a\` to \`z\`, \`A\` to \`Z\`,+-- \`0\` to \`9\`, or \`_\`, and must not start with \`0\` to \`9\`. For+-- example, \`foo_bar_17\`. Field names matching the regular expression+-- \`__.*__\` are reserved. Reserved field names are forbidden except in+-- certain documented contexts. The map keys, represented as UTF-8, must+-- not exceed 1,500 bytes and cannot be empty. Field paths may be used in+-- other contexts to refer to structured fields defined here. For+-- \`map_value\`, the field path is represented by the simple or quoted+-- field names of the containing fields, delimited by \`.\`. For example,+-- the structured field \`\"foo\" : { map_value: { \"x&y\" : {+-- string_value: \"hello\" }}}\` would be represented by the field path+-- \`foo.x&y\`. Within a field path, a quoted field name starts and ends+-- with \`\` \` \`\` and may contain any character. Some characters,+-- including \`\` \` \`\`, must be escaped using a \`\\\`. For example,+-- \`\` \`x&y\` \`\` represents \`x&y\` and \`\` \`bak\\\`tik\` \`\`+-- represents \`\` bak\`tik \`\`.+--+-- /See:/ 'documentFields' smart constructor.+newtype DocumentFields =+ DocumentFields'+ { _dfAddtional :: HashMap Text Value+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DocumentFields' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dfAddtional'+documentFields+ :: HashMap Text Value -- ^ 'dfAddtional'+ -> DocumentFields+documentFields pDfAddtional_ =+ DocumentFields' {_dfAddtional = _Coerce # pDfAddtional_}+++dfAddtional :: Lens' DocumentFields (HashMap Text Value)+dfAddtional+ = lens _dfAddtional (\ s a -> s{_dfAddtional = a}) .+ _Coerce++instance FromJSON DocumentFields where+ parseJSON+ = withObject "DocumentFields"+ (\ o -> DocumentFields' <$> (parseJSONObject o))++instance ToJSON DocumentFields where+ toJSON = toJSON . _dfAddtional++-- | Options for a transaction that can only be used to read documents.+--+-- /See:/ 'readOnly' smart constructor.+newtype ReadOnly =+ ReadOnly'+ { _roReadTime :: Maybe DateTime'+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ReadOnly' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'roReadTime'+readOnly+ :: ReadOnly+readOnly = ReadOnly' {_roReadTime = Nothing}+++-- | Reads documents at the given time. This may not be older than 60+-- seconds.+roReadTime :: Lens' ReadOnly (Maybe UTCTime)+roReadTime+ = lens _roReadTime (\ s a -> s{_roReadTime = a}) .+ mapping _DateTime++instance FromJSON ReadOnly where+ parseJSON+ = withObject "ReadOnly"+ (\ o -> ReadOnly' <$> (o .:? "readTime"))++instance ToJSON ReadOnly where+ toJSON ReadOnly'{..}+ = object+ (catMaybes [("readTime" .=) <$> _roReadTime])++-- | A specification of a set of documents to listen to.+--+-- /See:/ 'target' smart constructor.+data Target =+ Target'+ { _tTargetId :: !(Maybe (Textual Int32))+ , _tOnce :: !(Maybe Bool)+ , _tReadTime :: !(Maybe DateTime')+ , _tResumeToken :: !(Maybe Bytes)+ , _tDocuments :: !(Maybe DocumentsTarget)+ , _tQuery :: !(Maybe QueryTarget)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Target' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tTargetId'+--+-- * 'tOnce'+--+-- * 'tReadTime'+--+-- * 'tResumeToken'+--+-- * 'tDocuments'+--+-- * 'tQuery'+target+ :: Target+target =+ Target'+ { _tTargetId = Nothing+ , _tOnce = Nothing+ , _tReadTime = Nothing+ , _tResumeToken = Nothing+ , _tDocuments = Nothing+ , _tQuery = Nothing+ }+++-- | A client provided target ID. If not set, the server will assign an ID+-- for the target. Used for resuming a target without changing IDs. The IDs+-- can either be client-assigned or be server-assigned in a previous+-- stream. All targets with client provided IDs must be added before adding+-- a target that needs a server-assigned id.+tTargetId :: Lens' Target (Maybe Int32)+tTargetId+ = lens _tTargetId (\ s a -> s{_tTargetId = a}) .+ mapping _Coerce++-- | If the target should be removed once it is current and consistent.+tOnce :: Lens' Target (Maybe Bool)+tOnce = lens _tOnce (\ s a -> s{_tOnce = a})++-- | Start listening after a specific \`read_time\`. The client must know the+-- state of matching documents at this time.+tReadTime :: Lens' Target (Maybe UTCTime)+tReadTime+ = lens _tReadTime (\ s a -> s{_tReadTime = a}) .+ mapping _DateTime++-- | A resume token from a prior TargetChange for an identical target. Using+-- a resume token with a different target is unsupported and may fail.+tResumeToken :: Lens' Target (Maybe ByteString)+tResumeToken+ = lens _tResumeToken (\ s a -> s{_tResumeToken = a})+ . mapping _Bytes++-- | A target specified by a set of document names.+tDocuments :: Lens' Target (Maybe DocumentsTarget)+tDocuments+ = lens _tDocuments (\ s a -> s{_tDocuments = a})++-- | A target specified by a query.+tQuery :: Lens' Target (Maybe QueryTarget)+tQuery = lens _tQuery (\ s a -> s{_tQuery = a})++instance FromJSON Target where+ parseJSON+ = withObject "Target"+ (\ o ->+ Target' <$>+ (o .:? "targetId") <*> (o .:? "once") <*>+ (o .:? "readTime")+ <*> (o .:? "resumeToken")+ <*> (o .:? "documents")+ <*> (o .:? "query"))++instance ToJSON Target where+ toJSON Target'{..}+ = object+ (catMaybes+ [("targetId" .=) <$> _tTargetId,+ ("once" .=) <$> _tOnce,+ ("readTime" .=) <$> _tReadTime,+ ("resumeToken" .=) <$> _tResumeToken,+ ("documents" .=) <$> _tDocuments,+ ("query" .=) <$> _tQuery])++-- | Labels associated with this write request.+--+-- /See:/ 'writeRequestLabels' smart constructor.+newtype WriteRequestLabels =+ WriteRequestLabels'+ { _wrlAddtional :: HashMap Text Text+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'WriteRequestLabels' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'wrlAddtional'+writeRequestLabels+ :: HashMap Text Text -- ^ 'wrlAddtional'+ -> WriteRequestLabels+writeRequestLabels pWrlAddtional_ =+ WriteRequestLabels' {_wrlAddtional = _Coerce # pWrlAddtional_}+++wrlAddtional :: Lens' WriteRequestLabels (HashMap Text Text)+wrlAddtional+ = lens _wrlAddtional (\ s a -> s{_wrlAddtional = a})+ . _Coerce++instance FromJSON WriteRequestLabels where+ parseJSON+ = withObject "WriteRequestLabels"+ (\ o -> WriteRequestLabels' <$> (parseJSONObject o))++instance ToJSON WriteRequestLabels where+ toJSON = toJSON . _wrlAddtional++-- | This resource represents a long-running operation that is the result of+-- a network API call.+--+-- /See:/ 'googleLongrunningOperation' smart constructor.+data GoogleLongrunningOperation =+ GoogleLongrunningOperation'+ { _gloDone :: !(Maybe Bool)+ , _gloError :: !(Maybe Status)+ , _gloResponse :: !(Maybe GoogleLongrunningOperationResponse)+ , _gloName :: !(Maybe Text)+ , _gloMetadata :: !(Maybe GoogleLongrunningOperationMetadata)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GoogleLongrunningOperation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gloDone'+--+-- * 'gloError'+--+-- * 'gloResponse'+--+-- * 'gloName'+--+-- * 'gloMetadata'+googleLongrunningOperation+ :: GoogleLongrunningOperation+googleLongrunningOperation =+ GoogleLongrunningOperation'+ { _gloDone = Nothing+ , _gloError = Nothing+ , _gloResponse = Nothing+ , _gloName = Nothing+ , _gloMetadata = Nothing+ }+++-- | If the value is \`false\`, it means the operation is still in progress.+-- If \`true\`, the operation is completed, and either \`error\` or+-- \`response\` is available.+gloDone :: Lens' GoogleLongrunningOperation (Maybe Bool)+gloDone = lens _gloDone (\ s a -> s{_gloDone = a})++-- | The error result of the operation in case of failure or cancellation.+gloError :: Lens' GoogleLongrunningOperation (Maybe Status)+gloError = lens _gloError (\ s a -> s{_gloError = a})++-- | The normal response of the operation in case of success. If the original+-- method returns no data on success, such as \`Delete\`, the response is+-- \`google.protobuf.Empty\`. If the original method is standard+-- \`Get\`\/\`Create\`\/\`Update\`, the response should be the resource.+-- For other methods, the response should have the type \`XxxResponse\`,+-- where \`Xxx\` is the original method name. For example, if the original+-- method name is \`TakeSnapshot()\`, the inferred response type is+-- \`TakeSnapshotResponse\`.+gloResponse :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationResponse)+gloResponse+ = lens _gloResponse (\ s a -> s{_gloResponse = a})++-- | The server-assigned name, which is only unique within the same service+-- that originally returns it. If you use the default HTTP mapping, the+-- \`name\` should have the format of \`operations\/some\/unique\/name\`.+gloName :: Lens' GoogleLongrunningOperation (Maybe Text)+gloName = lens _gloName (\ s a -> s{_gloName = a})++-- | Service-specific metadata associated with the operation. It typically+-- contains progress information and common metadata such as create time.+-- Some services might not provide such metadata. Any method that returns a+-- long-running operation should document the metadata type, if any.+gloMetadata :: Lens' GoogleLongrunningOperation (Maybe GoogleLongrunningOperationMetadata)+gloMetadata+ = lens _gloMetadata (\ s a -> s{_gloMetadata = a})++instance FromJSON GoogleLongrunningOperation where+ parseJSON+ = withObject "GoogleLongrunningOperation"+ (\ o ->+ GoogleLongrunningOperation' <$>+ (o .:? "done") <*> (o .:? "error") <*>+ (o .:? "response")+ <*> (o .:? "name")+ <*> (o .:? "metadata"))++instance ToJSON GoogleLongrunningOperation where+ toJSON GoogleLongrunningOperation'{..}+ = object+ (catMaybes+ [("done" .=) <$> _gloDone,+ ("error" .=) <$> _gloError,+ ("response" .=) <$> _gloResponse,+ ("name" .=) <$> _gloName,+ ("metadata" .=) <$> _gloMetadata])++-- | A filter with a single operand.+--+-- /See:/ 'unaryFilter' smart constructor.+data UnaryFilter =+ UnaryFilter'+ { _ufOp :: !(Maybe UnaryFilterOp)+ , _ufField :: !(Maybe FieldReference)+ }+ deriving (Eq, Show, Data, Typeable, Generic)+++-- | Creates a value of 'UnaryFilter' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ufOp'+--+-- * 'ufField'+unaryFilter+ :: UnaryFilter+unaryFilter = UnaryFilter' {_ufOp = Nothing, _ufField = Nothing}+ -- | The unary operator to apply. ufOp :: Lens' UnaryFilter (Maybe UnaryFilterOp)
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/Get.hs view
@@ -61,15 +61,18 @@ -- | Gets the metadata and configuration for a Field. -- -- /See:/ 'projectsDatabasesCollectionGroupsFieldsGet' smart constructor.-data ProjectsDatabasesCollectionGroupsFieldsGet = ProjectsDatabasesCollectionGroupsFieldsGet'+data ProjectsDatabasesCollectionGroupsFieldsGet =+ ProjectsDatabasesCollectionGroupsFieldsGet' { _pdcgfgXgafv :: !(Maybe Xgafv) , _pdcgfgUploadProtocol :: !(Maybe Text) , _pdcgfgAccessToken :: !(Maybe Text) , _pdcgfgUploadType :: !(Maybe Text) , _pdcgfgName :: !Text , _pdcgfgCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsFieldsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -89,7 +92,7 @@ :: Text -- ^ 'pdcgfgName' -> ProjectsDatabasesCollectionGroupsFieldsGet projectsDatabasesCollectionGroupsFieldsGet pPdcgfgName_ =- ProjectsDatabasesCollectionGroupsFieldsGet'+ ProjectsDatabasesCollectionGroupsFieldsGet' { _pdcgfgXgafv = Nothing , _pdcgfgUploadProtocol = Nothing , _pdcgfgAccessToken = Nothing@@ -98,6 +101,7 @@ , _pdcgfgCallback = Nothing } + -- | V1 error format. pdcgfgXgafv :: Lens' ProjectsDatabasesCollectionGroupsFieldsGet (Maybe Xgafv) pdcgfgXgafv@@ -134,7 +138,8 @@ (\ s a -> s{_pdcgfgCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsFieldsGet where+ ProjectsDatabasesCollectionGroupsFieldsGet+ where type Rs ProjectsDatabasesCollectionGroupsFieldsGet = GoogleFirestoreAdminV1Field type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/List.hs view
@@ -77,7 +77,8 @@ -- \`indexConfig.usesAncestorConfig:false\`. -- -- /See:/ 'projectsDatabasesCollectionGroupsFieldsList' smart constructor.-data ProjectsDatabasesCollectionGroupsFieldsList = ProjectsDatabasesCollectionGroupsFieldsList'+data ProjectsDatabasesCollectionGroupsFieldsList =+ ProjectsDatabasesCollectionGroupsFieldsList' { _pdcgflParent :: !Text , _pdcgflXgafv :: !(Maybe Xgafv) , _pdcgflUploadProtocol :: !(Maybe Text)@@ -87,8 +88,10 @@ , _pdcgflPageToken :: !(Maybe Text) , _pdcgflPageSize :: !(Maybe (Textual Int32)) , _pdcgflCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsFieldsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -114,7 +117,7 @@ :: Text -- ^ 'pdcgflParent' -> ProjectsDatabasesCollectionGroupsFieldsList projectsDatabasesCollectionGroupsFieldsList pPdcgflParent_ =- ProjectsDatabasesCollectionGroupsFieldsList'+ ProjectsDatabasesCollectionGroupsFieldsList' { _pdcgflParent = pPdcgflParent_ , _pdcgflXgafv = Nothing , _pdcgflUploadProtocol = Nothing@@ -126,6 +129,7 @@ , _pdcgflCallback = Nothing } + -- | A parent name of the form -- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\` pdcgflParent :: Lens' ProjectsDatabasesCollectionGroupsFieldsList Text@@ -186,7 +190,8 @@ (\ s a -> s{_pdcgflCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsFieldsList where+ ProjectsDatabasesCollectionGroupsFieldsList+ where type Rs ProjectsDatabasesCollectionGroupsFieldsList = GoogleFirestoreAdminV1ListFieldsResponse type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Fields/Patch.hs view
@@ -83,7 +83,8 @@ -- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/__default__\/fields\/*\`. -- -- /See:/ 'projectsDatabasesCollectionGroupsFieldsPatch' smart constructor.-data ProjectsDatabasesCollectionGroupsFieldsPatch = ProjectsDatabasesCollectionGroupsFieldsPatch'+data ProjectsDatabasesCollectionGroupsFieldsPatch =+ ProjectsDatabasesCollectionGroupsFieldsPatch' { _pdcgfpXgafv :: !(Maybe Xgafv) , _pdcgfpUploadProtocol :: !(Maybe Text) , _pdcgfpUpdateMask :: !(Maybe GFieldMask)@@ -92,8 +93,10 @@ , _pdcgfpPayload :: !GoogleFirestoreAdminV1Field , _pdcgfpName :: !Text , _pdcgfpCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsFieldsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -118,7 +121,7 @@ -> Text -- ^ 'pdcgfpName' -> ProjectsDatabasesCollectionGroupsFieldsPatch projectsDatabasesCollectionGroupsFieldsPatch pPdcgfpPayload_ pPdcgfpName_ =- ProjectsDatabasesCollectionGroupsFieldsPatch'+ ProjectsDatabasesCollectionGroupsFieldsPatch' { _pdcgfpXgafv = Nothing , _pdcgfpUploadProtocol = Nothing , _pdcgfpUpdateMask = Nothing@@ -129,6 +132,7 @@ , _pdcgfpCallback = Nothing } + -- | V1 error format. pdcgfpXgafv :: Lens' ProjectsDatabasesCollectionGroupsFieldsPatch (Maybe Xgafv) pdcgfpXgafv@@ -195,7 +199,8 @@ (\ s a -> s{_pdcgfpCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsFieldsPatch where+ ProjectsDatabasesCollectionGroupsFieldsPatch+ where type Rs ProjectsDatabasesCollectionGroupsFieldsPatch = GoogleLongrunningOperation type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Create.hs view
@@ -68,7 +68,8 @@ -- the operation will be the type IndexOperationMetadata. -- -- /See:/ 'projectsDatabasesCollectionGroupsIndexesCreate' smart constructor.-data ProjectsDatabasesCollectionGroupsIndexesCreate = ProjectsDatabasesCollectionGroupsIndexesCreate'+data ProjectsDatabasesCollectionGroupsIndexesCreate =+ ProjectsDatabasesCollectionGroupsIndexesCreate' { _pdcgicParent :: !Text , _pdcgicXgafv :: !(Maybe Xgafv) , _pdcgicUploadProtocol :: !(Maybe Text)@@ -76,8 +77,10 @@ , _pdcgicUploadType :: !(Maybe Text) , _pdcgicPayload :: !GoogleFirestoreAdminV1Index , _pdcgicCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsIndexesCreate' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -100,7 +103,7 @@ -> GoogleFirestoreAdminV1Index -- ^ 'pdcgicPayload' -> ProjectsDatabasesCollectionGroupsIndexesCreate projectsDatabasesCollectionGroupsIndexesCreate pPdcgicParent_ pPdcgicPayload_ =- ProjectsDatabasesCollectionGroupsIndexesCreate'+ ProjectsDatabasesCollectionGroupsIndexesCreate' { _pdcgicParent = pPdcgicParent_ , _pdcgicXgafv = Nothing , _pdcgicUploadProtocol = Nothing@@ -110,6 +113,7 @@ , _pdcgicCallback = Nothing } + -- | A parent name of the form -- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\` pdcgicParent :: Lens' ProjectsDatabasesCollectionGroupsIndexesCreate Text@@ -152,7 +156,8 @@ (\ s a -> s{_pdcgicCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsIndexesCreate where+ ProjectsDatabasesCollectionGroupsIndexesCreate+ where type Rs ProjectsDatabasesCollectionGroupsIndexesCreate = GoogleLongrunningOperation
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Delete.hs view
@@ -60,15 +60,18 @@ -- | Deletes a composite index. -- -- /See:/ 'projectsDatabasesCollectionGroupsIndexesDelete' smart constructor.-data ProjectsDatabasesCollectionGroupsIndexesDelete = ProjectsDatabasesCollectionGroupsIndexesDelete'+data ProjectsDatabasesCollectionGroupsIndexesDelete =+ ProjectsDatabasesCollectionGroupsIndexesDelete' { _pdcgidXgafv :: !(Maybe Xgafv) , _pdcgidUploadProtocol :: !(Maybe Text) , _pdcgidAccessToken :: !(Maybe Text) , _pdcgidUploadType :: !(Maybe Text) , _pdcgidName :: !Text , _pdcgidCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsIndexesDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -88,7 +91,7 @@ :: Text -- ^ 'pdcgidName' -> ProjectsDatabasesCollectionGroupsIndexesDelete projectsDatabasesCollectionGroupsIndexesDelete pPdcgidName_ =- ProjectsDatabasesCollectionGroupsIndexesDelete'+ ProjectsDatabasesCollectionGroupsIndexesDelete' { _pdcgidXgafv = Nothing , _pdcgidUploadProtocol = Nothing , _pdcgidAccessToken = Nothing@@ -97,6 +100,7 @@ , _pdcgidCallback = Nothing } + -- | V1 error format. pdcgidXgafv :: Lens' ProjectsDatabasesCollectionGroupsIndexesDelete (Maybe Xgafv) pdcgidXgafv@@ -133,7 +137,8 @@ (\ s a -> s{_pdcgidCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsIndexesDelete where+ ProjectsDatabasesCollectionGroupsIndexesDelete+ where type Rs ProjectsDatabasesCollectionGroupsIndexesDelete = Empty
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/Get.hs view
@@ -61,15 +61,18 @@ -- | Gets a composite index. -- -- /See:/ 'projectsDatabasesCollectionGroupsIndexesGet' smart constructor.-data ProjectsDatabasesCollectionGroupsIndexesGet = ProjectsDatabasesCollectionGroupsIndexesGet'+data ProjectsDatabasesCollectionGroupsIndexesGet =+ ProjectsDatabasesCollectionGroupsIndexesGet' { _pdcgigXgafv :: !(Maybe Xgafv) , _pdcgigUploadProtocol :: !(Maybe Text) , _pdcgigAccessToken :: !(Maybe Text) , _pdcgigUploadType :: !(Maybe Text) , _pdcgigName :: !Text , _pdcgigCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsIndexesGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -89,7 +92,7 @@ :: Text -- ^ 'pdcgigName' -> ProjectsDatabasesCollectionGroupsIndexesGet projectsDatabasesCollectionGroupsIndexesGet pPdcgigName_ =- ProjectsDatabasesCollectionGroupsIndexesGet'+ ProjectsDatabasesCollectionGroupsIndexesGet' { _pdcgigXgafv = Nothing , _pdcgigUploadProtocol = Nothing , _pdcgigAccessToken = Nothing@@ -98,6 +101,7 @@ , _pdcgigCallback = Nothing } + -- | V1 error format. pdcgigXgafv :: Lens' ProjectsDatabasesCollectionGroupsIndexesGet (Maybe Xgafv) pdcgigXgafv@@ -134,7 +138,8 @@ (\ s a -> s{_pdcgigCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsIndexesGet where+ ProjectsDatabasesCollectionGroupsIndexesGet+ where type Rs ProjectsDatabasesCollectionGroupsIndexesGet = GoogleFirestoreAdminV1Index type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/CollectionGroups/Indexes/List.hs view
@@ -69,7 +69,8 @@ -- | Lists composite indexes. -- -- /See:/ 'projectsDatabasesCollectionGroupsIndexesList' smart constructor.-data ProjectsDatabasesCollectionGroupsIndexesList = ProjectsDatabasesCollectionGroupsIndexesList'+data ProjectsDatabasesCollectionGroupsIndexesList =+ ProjectsDatabasesCollectionGroupsIndexesList' { _pdcgilParent :: !Text , _pdcgilXgafv :: !(Maybe Xgafv) , _pdcgilUploadProtocol :: !(Maybe Text)@@ -79,8 +80,10 @@ , _pdcgilPageToken :: !(Maybe Text) , _pdcgilPageSize :: !(Maybe (Textual Int32)) , _pdcgilCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesCollectionGroupsIndexesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -106,7 +109,7 @@ :: Text -- ^ 'pdcgilParent' -> ProjectsDatabasesCollectionGroupsIndexesList projectsDatabasesCollectionGroupsIndexesList pPdcgilParent_ =- ProjectsDatabasesCollectionGroupsIndexesList'+ ProjectsDatabasesCollectionGroupsIndexesList' { _pdcgilParent = pPdcgilParent_ , _pdcgilXgafv = Nothing , _pdcgilUploadProtocol = Nothing@@ -118,6 +121,7 @@ , _pdcgilCallback = Nothing } + -- | A parent name of the form -- \`projects\/{project_id}\/databases\/{database_id}\/collectionGroups\/{collection_id}\` pdcgilParent :: Lens' ProjectsDatabasesCollectionGroupsIndexesList Text@@ -174,7 +178,8 @@ (\ s a -> s{_pdcgilCallback = a}) instance GoogleRequest- ProjectsDatabasesCollectionGroupsIndexesList where+ ProjectsDatabasesCollectionGroupsIndexesList+ where type Rs ProjectsDatabasesCollectionGroupsIndexesList = GoogleFirestoreAdminV1ListIndexesResponse type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/BatchGet.hs view
@@ -65,7 +65,8 @@ -- guaranteed to be returned in the same order that they were requested. -- -- /See:/ 'projectsDatabasesDocumentsBatchGet' smart constructor.-data ProjectsDatabasesDocumentsBatchGet = ProjectsDatabasesDocumentsBatchGet'+data ProjectsDatabasesDocumentsBatchGet =+ ProjectsDatabasesDocumentsBatchGet' { _pddbgXgafv :: !(Maybe Xgafv) , _pddbgUploadProtocol :: !(Maybe Text) , _pddbgDatabase :: !Text@@ -73,8 +74,10 @@ , _pddbgUploadType :: !(Maybe Text) , _pddbgPayload :: !BatchGetDocumentsRequest , _pddbgCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsBatchGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -97,7 +100,7 @@ -> BatchGetDocumentsRequest -- ^ 'pddbgPayload' -> ProjectsDatabasesDocumentsBatchGet projectsDatabasesDocumentsBatchGet pPddbgDatabase_ pPddbgPayload_ =- ProjectsDatabasesDocumentsBatchGet'+ ProjectsDatabasesDocumentsBatchGet' { _pddbgXgafv = Nothing , _pddbgUploadProtocol = Nothing , _pddbgDatabase = pPddbgDatabase_@@ -107,6 +110,7 @@ , _pddbgCallback = Nothing } + -- | V1 error format. pddbgXgafv :: Lens' ProjectsDatabasesDocumentsBatchGet (Maybe Xgafv) pddbgXgafv@@ -149,7 +153,8 @@ (\ s a -> s{_pddbgCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsBatchGet where+ ProjectsDatabasesDocumentsBatchGet+ where type Rs ProjectsDatabasesDocumentsBatchGet = BatchGetDocumentsResponse type Scopes ProjectsDatabasesDocumentsBatchGet =
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/BeginTransaction.hs view
@@ -64,7 +64,8 @@ -- | Starts a new transaction. -- -- /See:/ 'projectsDatabasesDocumentsBeginTransaction' smart constructor.-data ProjectsDatabasesDocumentsBeginTransaction = ProjectsDatabasesDocumentsBeginTransaction'+data ProjectsDatabasesDocumentsBeginTransaction =+ ProjectsDatabasesDocumentsBeginTransaction' { _pddbtXgafv :: !(Maybe Xgafv) , _pddbtUploadProtocol :: !(Maybe Text) , _pddbtDatabase :: !Text@@ -72,8 +73,10 @@ , _pddbtUploadType :: !(Maybe Text) , _pddbtPayload :: !BeginTransactionRequest , _pddbtCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsBeginTransaction' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -96,7 +99,7 @@ -> BeginTransactionRequest -- ^ 'pddbtPayload' -> ProjectsDatabasesDocumentsBeginTransaction projectsDatabasesDocumentsBeginTransaction pPddbtDatabase_ pPddbtPayload_ =- ProjectsDatabasesDocumentsBeginTransaction'+ ProjectsDatabasesDocumentsBeginTransaction' { _pddbtXgafv = Nothing , _pddbtUploadProtocol = Nothing , _pddbtDatabase = pPddbtDatabase_@@ -106,6 +109,7 @@ , _pddbtCallback = Nothing } + -- | V1 error format. pddbtXgafv :: Lens' ProjectsDatabasesDocumentsBeginTransaction (Maybe Xgafv) pddbtXgafv@@ -148,7 +152,8 @@ (\ s a -> s{_pddbtCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsBeginTransaction where+ ProjectsDatabasesDocumentsBeginTransaction+ where type Rs ProjectsDatabasesDocumentsBeginTransaction = BeginTransactionResponse type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Commit.hs view
@@ -63,7 +63,8 @@ -- | Commits a transaction, while optionally updating documents. -- -- /See:/ 'projectsDatabasesDocumentsCommit' smart constructor.-data ProjectsDatabasesDocumentsCommit = ProjectsDatabasesDocumentsCommit'+data ProjectsDatabasesDocumentsCommit =+ ProjectsDatabasesDocumentsCommit' { _pddcXgafv :: !(Maybe Xgafv) , _pddcUploadProtocol :: !(Maybe Text) , _pddcDatabase :: !Text@@ -71,8 +72,10 @@ , _pddcUploadType :: !(Maybe Text) , _pddcPayload :: !CommitRequest , _pddcCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsCommit' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,7 +98,7 @@ -> CommitRequest -- ^ 'pddcPayload' -> ProjectsDatabasesDocumentsCommit projectsDatabasesDocumentsCommit pPddcDatabase_ pPddcPayload_ =- ProjectsDatabasesDocumentsCommit'+ ProjectsDatabasesDocumentsCommit' { _pddcXgafv = Nothing , _pddcUploadProtocol = Nothing , _pddcDatabase = pPddcDatabase_@@ -105,6 +108,7 @@ , _pddcCallback = Nothing } + -- | V1 error format. pddcXgafv :: Lens' ProjectsDatabasesDocumentsCommit (Maybe Xgafv) pddcXgafv@@ -145,7 +149,8 @@ = lens _pddcCallback (\ s a -> s{_pddcCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsCommit where+ ProjectsDatabasesDocumentsCommit+ where type Rs ProjectsDatabasesDocumentsCommit = CommitResponse type Scopes ProjectsDatabasesDocumentsCommit =
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/CreateDocument.hs view
@@ -68,7 +68,8 @@ -- | Creates a new document. -- -- /See:/ 'projectsDatabasesDocumentsCreateDocument' smart constructor.-data ProjectsDatabasesDocumentsCreateDocument = ProjectsDatabasesDocumentsCreateDocument'+data ProjectsDatabasesDocumentsCreateDocument =+ ProjectsDatabasesDocumentsCreateDocument' { _pddcdParent :: !Text , _pddcdXgafv :: !(Maybe Xgafv) , _pddcdDocumentId :: !(Maybe Text)@@ -79,8 +80,10 @@ , _pddcdPayload :: !Document , _pddcdMaskFieldPaths :: !(Maybe [Text]) , _pddcdCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsCreateDocument' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -110,7 +113,7 @@ -> Document -- ^ 'pddcdPayload' -> ProjectsDatabasesDocumentsCreateDocument projectsDatabasesDocumentsCreateDocument pPddcdParent_ pPddcdCollectionId_ pPddcdPayload_ =- ProjectsDatabasesDocumentsCreateDocument'+ ProjectsDatabasesDocumentsCreateDocument' { _pddcdParent = pPddcdParent_ , _pddcdXgafv = Nothing , _pddcdDocumentId = Nothing@@ -123,6 +126,7 @@ , _pddcdCallback = Nothing } + -- | The parent resource. For example: -- \`projects\/{project_id}\/databases\/{database_id}\/documents\` or -- \`projects\/{project_id}\/databases\/{database_id}\/documents\/chatrooms\/{chatroom_id}\`@@ -188,7 +192,8 @@ (\ s a -> s{_pddcdCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsCreateDocument where+ ProjectsDatabasesDocumentsCreateDocument+ where type Rs ProjectsDatabasesDocumentsCreateDocument = Document type Scopes ProjectsDatabasesDocumentsCreateDocument
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Delete.hs view
@@ -63,7 +63,8 @@ -- | Deletes a document. -- -- /See:/ 'projectsDatabasesDocumentsDelete' smart constructor.-data ProjectsDatabasesDocumentsDelete = ProjectsDatabasesDocumentsDelete'+data ProjectsDatabasesDocumentsDelete =+ ProjectsDatabasesDocumentsDelete' { _pdddXgafv :: !(Maybe Xgafv) , _pdddUploadProtocol :: !(Maybe Text) , _pdddCurrentDocumentExists :: !(Maybe Bool)@@ -72,8 +73,10 @@ , _pdddCurrentDocumentUpdateTime :: !(Maybe DateTime') , _pdddName :: !Text , _pdddCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -97,7 +100,7 @@ :: Text -- ^ 'pdddName' -> ProjectsDatabasesDocumentsDelete projectsDatabasesDocumentsDelete pPdddName_ =- ProjectsDatabasesDocumentsDelete'+ ProjectsDatabasesDocumentsDelete' { _pdddXgafv = Nothing , _pdddUploadProtocol = Nothing , _pdddCurrentDocumentExists = Nothing@@ -108,6 +111,7 @@ , _pdddCallback = Nothing } + -- | V1 error format. pdddXgafv :: Lens' ProjectsDatabasesDocumentsDelete (Maybe Xgafv) pdddXgafv@@ -157,7 +161,8 @@ = lens _pdddCallback (\ s a -> s{_pdddCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsDelete where+ ProjectsDatabasesDocumentsDelete+ where type Rs ProjectsDatabasesDocumentsDelete = Empty type Scopes ProjectsDatabasesDocumentsDelete = '["https://www.googleapis.com/auth/cloud-platform",
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Get.hs view
@@ -65,7 +65,8 @@ -- | Gets a single document. -- -- /See:/ 'projectsDatabasesDocumentsGet' smart constructor.-data ProjectsDatabasesDocumentsGet = ProjectsDatabasesDocumentsGet'+data ProjectsDatabasesDocumentsGet =+ ProjectsDatabasesDocumentsGet' { _pddgXgafv :: !(Maybe Xgafv) , _pddgReadTime :: !(Maybe DateTime') , _pddgUploadProtocol :: !(Maybe Text)@@ -75,8 +76,10 @@ , _pddgName :: !Text , _pddgMaskFieldPaths :: !(Maybe [Text]) , _pddgCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -102,7 +105,7 @@ :: Text -- ^ 'pddgName' -> ProjectsDatabasesDocumentsGet projectsDatabasesDocumentsGet pPddgName_ =- ProjectsDatabasesDocumentsGet'+ ProjectsDatabasesDocumentsGet' { _pddgXgafv = Nothing , _pddgReadTime = Nothing , _pddgUploadProtocol = Nothing@@ -113,6 +116,7 @@ , _pddgMaskFieldPaths = Nothing , _pddgCallback = Nothing }+ -- | V1 error format. pddgXgafv :: Lens' ProjectsDatabasesDocumentsGet (Maybe Xgafv)
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/List.hs view
@@ -76,7 +76,8 @@ -- | Lists documents. -- -- /See:/ 'projectsDatabasesDocumentsList' smart constructor.-data ProjectsDatabasesDocumentsList = ProjectsDatabasesDocumentsList'+data ProjectsDatabasesDocumentsList =+ ProjectsDatabasesDocumentsList' { _pParent :: !Text , _pXgafv :: !(Maybe Xgafv) , _pReadTime :: !(Maybe DateTime')@@ -91,8 +92,10 @@ , _pPageSize :: !(Maybe (Textual Int32)) , _pMaskFieldPaths :: !(Maybe [Text]) , _pCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -129,7 +132,7 @@ -> Text -- ^ 'pCollectionId' -> ProjectsDatabasesDocumentsList projectsDatabasesDocumentsList pPParent_ pPCollectionId_ =- ProjectsDatabasesDocumentsList'+ ProjectsDatabasesDocumentsList' { _pParent = pPParent_ , _pXgafv = Nothing , _pReadTime = Nothing@@ -145,6 +148,7 @@ , _pMaskFieldPaths = Nothing , _pCallback = Nothing }+ -- | The parent resource name. In the format: -- \`projects\/{project_id}\/databases\/{database_id}\/documents\` or
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/ListCollectionIds.hs view
@@ -63,7 +63,8 @@ -- | Lists all the collection IDs underneath a document. -- -- /See:/ 'projectsDatabasesDocumentsListCollectionIds' smart constructor.-data ProjectsDatabasesDocumentsListCollectionIds = ProjectsDatabasesDocumentsListCollectionIds'+data ProjectsDatabasesDocumentsListCollectionIds =+ ProjectsDatabasesDocumentsListCollectionIds' { _pddlciParent :: !Text , _pddlciXgafv :: !(Maybe Xgafv) , _pddlciUploadProtocol :: !(Maybe Text)@@ -71,8 +72,10 @@ , _pddlciUploadType :: !(Maybe Text) , _pddlciPayload :: !ListCollectionIdsRequest , _pddlciCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsListCollectionIds' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,7 +98,7 @@ -> ListCollectionIdsRequest -- ^ 'pddlciPayload' -> ProjectsDatabasesDocumentsListCollectionIds projectsDatabasesDocumentsListCollectionIds pPddlciParent_ pPddlciPayload_ =- ProjectsDatabasesDocumentsListCollectionIds'+ ProjectsDatabasesDocumentsListCollectionIds' { _pddlciParent = pPddlciParent_ , _pddlciXgafv = Nothing , _pddlciUploadProtocol = Nothing@@ -105,6 +108,7 @@ , _pddlciCallback = Nothing } + -- | The parent document. In the format: -- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`. -- For example:@@ -149,7 +153,8 @@ (\ s a -> s{_pddlciCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsListCollectionIds where+ ProjectsDatabasesDocumentsListCollectionIds+ where type Rs ProjectsDatabasesDocumentsListCollectionIds = ListCollectionIdsResponse type Scopes
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Listen.hs view
@@ -63,7 +63,8 @@ -- | Listens to changes. -- -- /See:/ 'projectsDatabasesDocumentsListen' smart constructor.-data ProjectsDatabasesDocumentsListen = ProjectsDatabasesDocumentsListen'+data ProjectsDatabasesDocumentsListen =+ ProjectsDatabasesDocumentsListen' { _pddlXgafv :: !(Maybe Xgafv) , _pddlUploadProtocol :: !(Maybe Text) , _pddlDatabase :: !Text@@ -71,8 +72,10 @@ , _pddlUploadType :: !(Maybe Text) , _pddlPayload :: !ListenRequest , _pddlCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsListen' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,7 +98,7 @@ -> ListenRequest -- ^ 'pddlPayload' -> ProjectsDatabasesDocumentsListen projectsDatabasesDocumentsListen pPddlDatabase_ pPddlPayload_ =- ProjectsDatabasesDocumentsListen'+ ProjectsDatabasesDocumentsListen' { _pddlXgafv = Nothing , _pddlUploadProtocol = Nothing , _pddlDatabase = pPddlDatabase_@@ -105,6 +108,7 @@ , _pddlCallback = Nothing } + -- | V1 error format. pddlXgafv :: Lens' ProjectsDatabasesDocumentsListen (Maybe Xgafv) pddlXgafv@@ -145,7 +149,8 @@ = lens _pddlCallback (\ s a -> s{_pddlCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsListen where+ ProjectsDatabasesDocumentsListen+ where type Rs ProjectsDatabasesDocumentsListen = ListenResponse type Scopes ProjectsDatabasesDocumentsListen =
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Patch.hs view
@@ -69,7 +69,8 @@ -- | Updates or inserts a document. -- -- /See:/ 'projectsDatabasesDocumentsPatch' smart constructor.-data ProjectsDatabasesDocumentsPatch = ProjectsDatabasesDocumentsPatch'+data ProjectsDatabasesDocumentsPatch =+ ProjectsDatabasesDocumentsPatch' { _pddpXgafv :: !(Maybe Xgafv) , _pddpUpdateMaskFieldPaths :: !(Maybe [Text]) , _pddpUploadProtocol :: !(Maybe Text)@@ -81,8 +82,10 @@ , _pddpName :: !Text , _pddpMaskFieldPaths :: !(Maybe [Text]) , _pddpCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsPatch' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -113,7 +116,7 @@ -> Text -- ^ 'pddpName' -> ProjectsDatabasesDocumentsPatch projectsDatabasesDocumentsPatch pPddpPayload_ pPddpName_ =- ProjectsDatabasesDocumentsPatch'+ ProjectsDatabasesDocumentsPatch' { _pddpXgafv = Nothing , _pddpUpdateMaskFieldPaths = Nothing , _pddpUploadProtocol = Nothing@@ -127,6 +130,7 @@ , _pddpCallback = Nothing } + -- | V1 error format. pddpXgafv :: Lens' ProjectsDatabasesDocumentsPatch (Maybe Xgafv) pddpXgafv@@ -199,7 +203,8 @@ = lens _pddpCallback (\ s a -> s{_pddpCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsPatch where+ ProjectsDatabasesDocumentsPatch+ where type Rs ProjectsDatabasesDocumentsPatch = Document type Scopes ProjectsDatabasesDocumentsPatch = '["https://www.googleapis.com/auth/cloud-platform",
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Rollback.hs view
@@ -62,7 +62,8 @@ -- | Rolls back a transaction. -- -- /See:/ 'projectsDatabasesDocumentsRollback' smart constructor.-data ProjectsDatabasesDocumentsRollback = ProjectsDatabasesDocumentsRollback'+data ProjectsDatabasesDocumentsRollback =+ ProjectsDatabasesDocumentsRollback' { _pddrXgafv :: !(Maybe Xgafv) , _pddrUploadProtocol :: !(Maybe Text) , _pddrDatabase :: !Text@@ -70,8 +71,10 @@ , _pddrUploadType :: !(Maybe Text) , _pddrPayload :: !RollbackRequest , _pddrCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsRollback' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -94,7 +97,7 @@ -> RollbackRequest -- ^ 'pddrPayload' -> ProjectsDatabasesDocumentsRollback projectsDatabasesDocumentsRollback pPddrDatabase_ pPddrPayload_ =- ProjectsDatabasesDocumentsRollback'+ ProjectsDatabasesDocumentsRollback' { _pddrXgafv = Nothing , _pddrUploadProtocol = Nothing , _pddrDatabase = pPddrDatabase_@@ -104,6 +107,7 @@ , _pddrCallback = Nothing } + -- | V1 error format. pddrXgafv :: Lens' ProjectsDatabasesDocumentsRollback (Maybe Xgafv) pddrXgafv@@ -144,7 +148,8 @@ = lens _pddrCallback (\ s a -> s{_pddrCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsRollback where+ ProjectsDatabasesDocumentsRollback+ where type Rs ProjectsDatabasesDocumentsRollback = Empty type Scopes ProjectsDatabasesDocumentsRollback = '["https://www.googleapis.com/auth/cloud-platform",
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/RunQuery.hs view
@@ -62,7 +62,8 @@ -- | Runs a query. -- -- /See:/ 'projectsDatabasesDocumentsRunQuery' smart constructor.-data ProjectsDatabasesDocumentsRunQuery = ProjectsDatabasesDocumentsRunQuery'+data ProjectsDatabasesDocumentsRunQuery =+ ProjectsDatabasesDocumentsRunQuery' { _pddrqParent :: !Text , _pddrqXgafv :: !(Maybe Xgafv) , _pddrqUploadProtocol :: !(Maybe Text)@@ -70,8 +71,10 @@ , _pddrqUploadType :: !(Maybe Text) , _pddrqPayload :: !RunQueryRequest , _pddrqCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsRunQuery' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -94,7 +97,7 @@ -> RunQueryRequest -- ^ 'pddrqPayload' -> ProjectsDatabasesDocumentsRunQuery projectsDatabasesDocumentsRunQuery pPddrqParent_ pPddrqPayload_ =- ProjectsDatabasesDocumentsRunQuery'+ ProjectsDatabasesDocumentsRunQuery' { _pddrqParent = pPddrqParent_ , _pddrqXgafv = Nothing , _pddrqUploadProtocol = Nothing@@ -104,6 +107,7 @@ , _pddrqCallback = Nothing } + -- | The parent resource name. In the format: -- \`projects\/{project_id}\/databases\/{database_id}\/documents\` or -- \`projects\/{project_id}\/databases\/{database_id}\/documents\/{document_path}\`.@@ -149,7 +153,8 @@ (\ s a -> s{_pddrqCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsRunQuery where+ ProjectsDatabasesDocumentsRunQuery+ where type Rs ProjectsDatabasesDocumentsRunQuery = RunQueryResponse type Scopes ProjectsDatabasesDocumentsRunQuery =
gen/Network/Google/Resource/FireStore/Projects/Databases/Documents/Write.hs view
@@ -63,7 +63,8 @@ -- | Streams batches of document updates and deletes, in order. -- -- /See:/ 'projectsDatabasesDocumentsWrite' smart constructor.-data ProjectsDatabasesDocumentsWrite = ProjectsDatabasesDocumentsWrite'+data ProjectsDatabasesDocumentsWrite =+ ProjectsDatabasesDocumentsWrite' { _pddwXgafv :: !(Maybe Xgafv) , _pddwUploadProtocol :: !(Maybe Text) , _pddwDatabase :: !Text@@ -71,8 +72,10 @@ , _pddwUploadType :: !(Maybe Text) , _pddwPayload :: !WriteRequest , _pddwCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesDocumentsWrite' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -95,7 +98,7 @@ -> WriteRequest -- ^ 'pddwPayload' -> ProjectsDatabasesDocumentsWrite projectsDatabasesDocumentsWrite pPddwDatabase_ pPddwPayload_ =- ProjectsDatabasesDocumentsWrite'+ ProjectsDatabasesDocumentsWrite' { _pddwXgafv = Nothing , _pddwUploadProtocol = Nothing , _pddwDatabase = pPddwDatabase_@@ -105,6 +108,7 @@ , _pddwCallback = Nothing } + -- | V1 error format. pddwXgafv :: Lens' ProjectsDatabasesDocumentsWrite (Maybe Xgafv) pddwXgafv@@ -146,7 +150,8 @@ = lens _pddwCallback (\ s a -> s{_pddwCallback = a}) instance GoogleRequest- ProjectsDatabasesDocumentsWrite where+ ProjectsDatabasesDocumentsWrite+ where type Rs ProjectsDatabasesDocumentsWrite = WriteResponse type Scopes ProjectsDatabasesDocumentsWrite =
gen/Network/Google/Resource/FireStore/Projects/Databases/ExportDocuments.hs view
@@ -77,7 +77,8 @@ -- data behind in Google Cloud Storage. -- -- /See:/ 'projectsDatabasesExportDocuments' smart constructor.-data ProjectsDatabasesExportDocuments = ProjectsDatabasesExportDocuments'+data ProjectsDatabasesExportDocuments =+ ProjectsDatabasesExportDocuments' { _pdedXgafv :: !(Maybe Xgafv) , _pdedUploadProtocol :: !(Maybe Text) , _pdedAccessToken :: !(Maybe Text)@@ -85,8 +86,10 @@ , _pdedPayload :: !GoogleFirestoreAdminV1ExportDocumentsRequest , _pdedName :: !Text , _pdedCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesExportDocuments' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -109,7 +112,7 @@ -> Text -- ^ 'pdedName' -> ProjectsDatabasesExportDocuments projectsDatabasesExportDocuments pPdedPayload_ pPdedName_ =- ProjectsDatabasesExportDocuments'+ ProjectsDatabasesExportDocuments' { _pdedXgafv = Nothing , _pdedUploadProtocol = Nothing , _pdedAccessToken = Nothing@@ -119,6 +122,7 @@ , _pdedCallback = Nothing } + -- | V1 error format. pdedXgafv :: Lens' ProjectsDatabasesExportDocuments (Maybe Xgafv) pdedXgafv@@ -158,7 +162,8 @@ = lens _pdedCallback (\ s a -> s{_pdedCallback = a}) instance GoogleRequest- ProjectsDatabasesExportDocuments where+ ProjectsDatabasesExportDocuments+ where type Rs ProjectsDatabasesExportDocuments = GoogleLongrunningOperation type Scopes ProjectsDatabasesExportDocuments =
gen/Network/Google/Resource/FireStore/Projects/Databases/ImportDocuments.hs view
@@ -73,7 +73,8 @@ -- Firestore. -- -- /See:/ 'projectsDatabasesImportDocuments' smart constructor.-data ProjectsDatabasesImportDocuments = ProjectsDatabasesImportDocuments'+data ProjectsDatabasesImportDocuments =+ ProjectsDatabasesImportDocuments' { _pdidXgafv :: !(Maybe Xgafv) , _pdidUploadProtocol :: !(Maybe Text) , _pdidAccessToken :: !(Maybe Text)@@ -81,8 +82,10 @@ , _pdidPayload :: !GoogleFirestoreAdminV1ImportDocumentsRequest , _pdidName :: !Text , _pdidCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesImportDocuments' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -105,7 +108,7 @@ -> Text -- ^ 'pdidName' -> ProjectsDatabasesImportDocuments projectsDatabasesImportDocuments pPdidPayload_ pPdidName_ =- ProjectsDatabasesImportDocuments'+ ProjectsDatabasesImportDocuments' { _pdidXgafv = Nothing , _pdidUploadProtocol = Nothing , _pdidAccessToken = Nothing@@ -115,6 +118,7 @@ , _pdidCallback = Nothing } + -- | V1 error format. pdidXgafv :: Lens' ProjectsDatabasesImportDocuments (Maybe Xgafv) pdidXgafv@@ -154,7 +158,8 @@ = lens _pdidCallback (\ s a -> s{_pdidCallback = a}) instance GoogleRequest- ProjectsDatabasesImportDocuments where+ ProjectsDatabasesImportDocuments+ where type Rs ProjectsDatabasesImportDocuments = GoogleLongrunningOperation type Scopes ProjectsDatabasesImportDocuments =
gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Cancel.hs view
@@ -79,7 +79,8 @@ -- google.rpc.Status.code of 1, corresponding to \`Code.CANCELLED\`. -- -- /See:/ 'projectsDatabasesOperationsCancel' smart constructor.-data ProjectsDatabasesOperationsCancel = ProjectsDatabasesOperationsCancel'+data ProjectsDatabasesOperationsCancel =+ ProjectsDatabasesOperationsCancel' { _pdocXgafv :: !(Maybe Xgafv) , _pdocUploadProtocol :: !(Maybe Text) , _pdocAccessToken :: !(Maybe Text)@@ -87,8 +88,10 @@ , _pdocPayload :: !GoogleLongrunningCancelOperationRequest , _pdocName :: !Text , _pdocCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesOperationsCancel' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -111,7 +114,7 @@ -> Text -- ^ 'pdocName' -> ProjectsDatabasesOperationsCancel projectsDatabasesOperationsCancel pPdocPayload_ pPdocName_ =- ProjectsDatabasesOperationsCancel'+ ProjectsDatabasesOperationsCancel' { _pdocXgafv = Nothing , _pdocUploadProtocol = Nothing , _pdocAccessToken = Nothing@@ -121,6 +124,7 @@ , _pdocCallback = Nothing } + -- | V1 error format. pdocXgafv :: Lens' ProjectsDatabasesOperationsCancel (Maybe Xgafv) pdocXgafv@@ -159,7 +163,8 @@ = lens _pdocCallback (\ s a -> s{_pdocCallback = a}) instance GoogleRequest- ProjectsDatabasesOperationsCancel where+ ProjectsDatabasesOperationsCancel+ where type Rs ProjectsDatabasesOperationsCancel = Empty type Scopes ProjectsDatabasesOperationsCancel = '["https://www.googleapis.com/auth/cloud-platform",
gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Delete.hs view
@@ -65,15 +65,18 @@ -- \`google.rpc.Code.UNIMPLEMENTED\`. -- -- /See:/ 'projectsDatabasesOperationsDelete' smart constructor.-data ProjectsDatabasesOperationsDelete = ProjectsDatabasesOperationsDelete'+data ProjectsDatabasesOperationsDelete =+ ProjectsDatabasesOperationsDelete' { _pdodXgafv :: !(Maybe Xgafv) , _pdodUploadProtocol :: !(Maybe Text) , _pdodAccessToken :: !(Maybe Text) , _pdodUploadType :: !(Maybe Text) , _pdodName :: !Text , _pdodCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesOperationsDelete' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -93,7 +96,7 @@ :: Text -- ^ 'pdodName' -> ProjectsDatabasesOperationsDelete projectsDatabasesOperationsDelete pPdodName_ =- ProjectsDatabasesOperationsDelete'+ ProjectsDatabasesOperationsDelete' { _pdodXgafv = Nothing , _pdodUploadProtocol = Nothing , _pdodAccessToken = Nothing@@ -102,6 +105,7 @@ , _pdodCallback = Nothing } + -- | V1 error format. pdodXgafv :: Lens' ProjectsDatabasesOperationsDelete (Maybe Xgafv) pdodXgafv@@ -135,7 +139,8 @@ = lens _pdodCallback (\ s a -> s{_pdodCallback = a}) instance GoogleRequest- ProjectsDatabasesOperationsDelete where+ ProjectsDatabasesOperationsDelete+ where type Rs ProjectsDatabasesOperationsDelete = Empty type Scopes ProjectsDatabasesOperationsDelete = '["https://www.googleapis.com/auth/cloud-platform",
gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/Get.hs view
@@ -64,15 +64,18 @@ -- API service. -- -- /See:/ 'projectsDatabasesOperationsGet' smart constructor.-data ProjectsDatabasesOperationsGet = ProjectsDatabasesOperationsGet'+data ProjectsDatabasesOperationsGet =+ ProjectsDatabasesOperationsGet' { _pdogXgafv :: !(Maybe Xgafv) , _pdogUploadProtocol :: !(Maybe Text) , _pdogAccessToken :: !(Maybe Text) , _pdogUploadType :: !(Maybe Text) , _pdogName :: !Text , _pdogCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesOperationsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -92,7 +95,7 @@ :: Text -- ^ 'pdogName' -> ProjectsDatabasesOperationsGet projectsDatabasesOperationsGet pPdogName_ =- ProjectsDatabasesOperationsGet'+ ProjectsDatabasesOperationsGet' { _pdogXgafv = Nothing , _pdogUploadProtocol = Nothing , _pdogAccessToken = Nothing@@ -100,6 +103,7 @@ , _pdogName = pPdogName_ , _pdogCallback = Nothing }+ -- | V1 error format. pdogXgafv :: Lens' ProjectsDatabasesOperationsGet (Maybe Xgafv)
gen/Network/Google/Resource/FireStore/Projects/Databases/Operations/List.hs view
@@ -85,7 +85,8 @@ -- id. -- -- /See:/ 'projectsDatabasesOperationsList' smart constructor.-data ProjectsDatabasesOperationsList = ProjectsDatabasesOperationsList'+data ProjectsDatabasesOperationsList =+ ProjectsDatabasesOperationsList' { _pdolXgafv :: !(Maybe Xgafv) , _pdolUploadProtocol :: !(Maybe Text) , _pdolAccessToken :: !(Maybe Text)@@ -95,8 +96,10 @@ , _pdolPageToken :: !(Maybe Text) , _pdolPageSize :: !(Maybe (Textual Int32)) , _pdolCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsDatabasesOperationsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -122,7 +125,7 @@ :: Text -- ^ 'pdolName' -> ProjectsDatabasesOperationsList projectsDatabasesOperationsList pPdolName_ =- ProjectsDatabasesOperationsList'+ ProjectsDatabasesOperationsList' { _pdolXgafv = Nothing , _pdolUploadProtocol = Nothing , _pdolAccessToken = Nothing@@ -134,6 +137,7 @@ , _pdolCallback = Nothing } + -- | V1 error format. pdolXgafv :: Lens' ProjectsDatabasesOperationsList (Maybe Xgafv) pdolXgafv@@ -184,7 +188,8 @@ = lens _pdolCallback (\ s a -> s{_pdolCallback = a}) instance GoogleRequest- ProjectsDatabasesOperationsList where+ ProjectsDatabasesOperationsList+ where type Rs ProjectsDatabasesOperationsList = GoogleLongrunningListOperationsResponse type Scopes ProjectsDatabasesOperationsList =
gen/Network/Google/Resource/FireStore/Projects/Locations/Get.hs view
@@ -59,15 +59,18 @@ -- | Gets information about a location. -- -- /See:/ 'projectsLocationsGet' smart constructor.-data ProjectsLocationsGet = ProjectsLocationsGet'+data ProjectsLocationsGet =+ ProjectsLocationsGet' { _plgXgafv :: !(Maybe Xgafv) , _plgUploadProtocol :: !(Maybe Text) , _plgAccessToken :: !(Maybe Text) , _plgUploadType :: !(Maybe Text) , _plgName :: !Text , _plgCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsLocationsGet' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -87,7 +90,7 @@ :: Text -- ^ 'plgName' -> ProjectsLocationsGet projectsLocationsGet pPlgName_ =- ProjectsLocationsGet'+ ProjectsLocationsGet' { _plgXgafv = Nothing , _plgUploadProtocol = Nothing , _plgAccessToken = Nothing@@ -95,6 +98,7 @@ , _plgName = pPlgName_ , _plgCallback = Nothing }+ -- | V1 error format. plgXgafv :: Lens' ProjectsLocationsGet (Maybe Xgafv)
gen/Network/Google/Resource/FireStore/Projects/Locations/List.hs view
@@ -67,7 +67,8 @@ -- | Lists information about the supported locations for this service. -- -- /See:/ 'projectsLocationsList' smart constructor.-data ProjectsLocationsList = ProjectsLocationsList'+data ProjectsLocationsList =+ ProjectsLocationsList' { _pllXgafv :: !(Maybe Xgafv) , _pllUploadProtocol :: !(Maybe Text) , _pllAccessToken :: !(Maybe Text)@@ -77,8 +78,10 @@ , _pllPageToken :: !(Maybe Text) , _pllPageSize :: !(Maybe (Textual Int32)) , _pllCallback :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)+ }+ deriving (Eq, Show, Data, Typeable, Generic) + -- | Creates a value of 'ProjectsLocationsList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired:@@ -104,7 +107,7 @@ :: Text -- ^ 'pllName' -> ProjectsLocationsList projectsLocationsList pPllName_ =- ProjectsLocationsList'+ ProjectsLocationsList' { _pllXgafv = Nothing , _pllUploadProtocol = Nothing , _pllAccessToken = Nothing@@ -115,6 +118,7 @@ , _pllPageSize = Nothing , _pllCallback = Nothing }+ -- | V1 error format. pllXgafv :: Lens' ProjectsLocationsList (Maybe Xgafv)
gogol-firestore.cabal view
@@ -1,5 +1,5 @@ name: gogol-firestore-version: 0.4.0+version: 0.5.0 synopsis: Google Cloud Firestore SDK. homepage: https://github.com/brendanhay/gogol bug-reports: https://github.com/brendanhay/gogol/issues@@ -70,5 +70,5 @@ , Network.Google.FireStore.Types.Sum build-depends:- gogol-core == 0.4.0.*+ gogol-core == 0.5.0.* , base >= 4.7 && < 5