google-cloud-firestore 1.4.2 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +1 -1
  3. data/CHANGELOG.md +51 -0
  4. data/TROUBLESHOOTING.md +2 -8
  5. data/lib/google-cloud-firestore.rb +15 -21
  6. data/lib/google/cloud/firestore.rb +12 -23
  7. data/lib/google/cloud/firestore/client.rb +12 -14
  8. data/lib/google/cloud/firestore/collection_reference.rb +1 -0
  9. data/lib/google/cloud/firestore/collection_reference_list.rb +137 -0
  10. data/lib/google/cloud/firestore/convert.rb +39 -39
  11. data/lib/google/cloud/firestore/credentials.rb +2 -2
  12. data/lib/google/cloud/firestore/document_reference.rb +8 -8
  13. data/lib/google/cloud/firestore/document_reference/list.rb +2 -2
  14. data/lib/google/cloud/firestore/document_snapshot.rb +4 -4
  15. data/lib/google/cloud/firestore/query.rb +114 -22
  16. data/lib/google/cloud/firestore/service.rb +63 -104
  17. data/lib/google/cloud/firestore/transaction.rb +2 -2
  18. data/lib/google/cloud/firestore/version.rb +1 -1
  19. data/lib/google/cloud/firestore/watch/inventory.rb +2 -0
  20. data/lib/google/cloud/firestore/watch/listener.rb +9 -9
  21. data/lib/google/cloud/firestore/watch/order.rb +1 -1
  22. metadata +9 -107
  23. data/lib/google/cloud/firestore/admin.rb +0 -144
  24. data/lib/google/cloud/firestore/admin/v1.rb +0 -151
  25. data/lib/google/cloud/firestore/admin/v1/credentials.rb +0 -44
  26. data/lib/google/cloud/firestore/admin/v1/doc/google/firestore/admin/v1/field.rb +0 -86
  27. data/lib/google/cloud/firestore/admin/v1/doc/google/firestore/admin/v1/firestore_admin.rb +0 -161
  28. data/lib/google/cloud/firestore/admin/v1/doc/google/firestore/admin/v1/index.rb +0 -142
  29. data/lib/google/cloud/firestore/admin/v1/doc/google/longrunning/operations.rb +0 -51
  30. data/lib/google/cloud/firestore/admin/v1/doc/google/protobuf/any.rb +0 -131
  31. data/lib/google/cloud/firestore/admin/v1/doc/google/protobuf/empty.rb +0 -29
  32. data/lib/google/cloud/firestore/admin/v1/doc/google/protobuf/field_mask.rb +0 -222
  33. data/lib/google/cloud/firestore/admin/v1/doc/google/rpc/status.rb +0 -39
  34. data/lib/google/cloud/firestore/admin/v1/firestore_admin_client.rb +0 -902
  35. data/lib/google/cloud/firestore/admin/v1/firestore_admin_client_config.json +0 -71
  36. data/lib/google/cloud/firestore/v1.rb +0 -152
  37. data/lib/google/cloud/firestore/v1/credentials.rb +0 -42
  38. data/lib/google/cloud/firestore/v1/doc/google/firestore/v1/common.rb +0 -64
  39. data/lib/google/cloud/firestore/v1/doc/google/firestore/v1/document.rb +0 -136
  40. data/lib/google/cloud/firestore/v1/doc/google/firestore/v1/firestore.rb +0 -566
  41. data/lib/google/cloud/firestore/v1/doc/google/firestore/v1/query.rb +0 -227
  42. data/lib/google/cloud/firestore/v1/doc/google/firestore/v1/write.rb +0 -241
  43. data/lib/google/cloud/firestore/v1/doc/google/protobuf/any.rb +0 -131
  44. data/lib/google/cloud/firestore/v1/doc/google/protobuf/empty.rb +0 -29
  45. data/lib/google/cloud/firestore/v1/doc/google/protobuf/timestamp.rb +0 -113
  46. data/lib/google/cloud/firestore/v1/doc/google/protobuf/wrappers.rb +0 -26
  47. data/lib/google/cloud/firestore/v1/doc/google/rpc/status.rb +0 -39
  48. data/lib/google/cloud/firestore/v1/firestore_client.rb +0 -1011
  49. data/lib/google/cloud/firestore/v1/firestore_client_config.json +0 -100
  50. data/lib/google/cloud/firestore/v1beta1.rb +0 -162
  51. data/lib/google/cloud/firestore/v1beta1/credentials.rb +0 -42
  52. data/lib/google/cloud/firestore/v1beta1/doc/google/firestore/v1beta1/common.rb +0 -64
  53. data/lib/google/cloud/firestore/v1beta1/doc/google/firestore/v1beta1/document.rb +0 -136
  54. data/lib/google/cloud/firestore/v1beta1/doc/google/firestore/v1beta1/firestore.rb +0 -564
  55. data/lib/google/cloud/firestore/v1beta1/doc/google/firestore/v1beta1/query.rb +0 -227
  56. data/lib/google/cloud/firestore/v1beta1/doc/google/firestore/v1beta1/write.rb +0 -237
  57. data/lib/google/cloud/firestore/v1beta1/doc/google/protobuf/any.rb +0 -131
  58. data/lib/google/cloud/firestore/v1beta1/doc/google/protobuf/empty.rb +0 -29
  59. data/lib/google/cloud/firestore/v1beta1/doc/google/protobuf/timestamp.rb +0 -113
  60. data/lib/google/cloud/firestore/v1beta1/doc/google/protobuf/wrappers.rb +0 -26
  61. data/lib/google/cloud/firestore/v1beta1/doc/google/rpc/status.rb +0 -39
  62. data/lib/google/cloud/firestore/v1beta1/firestore_client.rb +0 -1021
  63. data/lib/google/cloud/firestore/v1beta1/firestore_client_config.json +0 -100
  64. data/lib/google/firestore/admin/v1/field_pb.rb +0 -32
  65. data/lib/google/firestore/admin/v1/firestore_admin_pb.rb +0 -84
  66. data/lib/google/firestore/admin/v1/firestore_admin_services_pb.rb +0 -94
  67. data/lib/google/firestore/admin/v1/index_pb.rb +0 -58
  68. data/lib/google/firestore/admin/v1/location_pb.rb +0 -22
  69. data/lib/google/firestore/admin/v1/operation_pb.rb +0 -90
  70. data/lib/google/firestore/v1/common_pb.rb +0 -45
  71. data/lib/google/firestore/v1/document_pb.rb +0 -50
  72. data/lib/google/firestore/v1/firestore_pb.rb +0 -222
  73. data/lib/google/firestore/v1/firestore_services_pb.rb +0 -80
  74. data/lib/google/firestore/v1/query_pb.rb +0 -107
  75. data/lib/google/firestore/v1/write_pb.rb +0 -80
  76. data/lib/google/firestore/v1beta1/common_pb.rb +0 -45
  77. data/lib/google/firestore/v1beta1/document_pb.rb +0 -50
  78. data/lib/google/firestore/v1beta1/firestore_pb.rb +0 -222
  79. data/lib/google/firestore/v1beta1/firestore_services_pb.rb +0 -89
  80. data/lib/google/firestore/v1beta1/query_pb.rb +0 -107
  81. data/lib/google/firestore/v1beta1/write_pb.rb +0 -79
@@ -1,71 +0,0 @@
1
- {
2
- "interfaces": {
3
- "google.firestore.admin.v1.FirestoreAdmin": {
4
- "retry_codes": {
5
- "idempotent": [
6
- "DEADLINE_EXCEEDED",
7
- "UNAVAILABLE"
8
- ],
9
- "non_idempotent": []
10
- },
11
- "retry_params": {
12
- "default": {
13
- "initial_retry_delay_millis": 100,
14
- "retry_delay_multiplier": 1.3,
15
- "max_retry_delay_millis": 60000,
16
- "initial_rpc_timeout_millis": 60000,
17
- "rpc_timeout_multiplier": 1.0,
18
- "max_rpc_timeout_millis": 60000,
19
- "total_timeout_millis": 600000
20
- }
21
- },
22
- "methods": {
23
- "DeleteIndex": {
24
- "timeout_millis": 60000,
25
- "retry_codes_name": "idempotent",
26
- "retry_params_name": "default"
27
- },
28
- "UpdateField": {
29
- "timeout_millis": 60000,
30
- "retry_codes_name": "non_idempotent",
31
- "retry_params_name": "default"
32
- },
33
- "CreateIndex": {
34
- "timeout_millis": 60000,
35
- "retry_codes_name": "non_idempotent",
36
- "retry_params_name": "default"
37
- },
38
- "ListIndexes": {
39
- "timeout_millis": 60000,
40
- "retry_codes_name": "idempotent",
41
- "retry_params_name": "default"
42
- },
43
- "GetIndex": {
44
- "timeout_millis": 60000,
45
- "retry_codes_name": "idempotent",
46
- "retry_params_name": "default"
47
- },
48
- "GetField": {
49
- "timeout_millis": 60000,
50
- "retry_codes_name": "idempotent",
51
- "retry_params_name": "default"
52
- },
53
- "ListFields": {
54
- "timeout_millis": 60000,
55
- "retry_codes_name": "idempotent",
56
- "retry_params_name": "default"
57
- },
58
- "ExportDocuments": {
59
- "timeout_millis": 60000,
60
- "retry_codes_name": "non_idempotent",
61
- "retry_params_name": "default"
62
- },
63
- "ImportDocuments": {
64
- "timeout_millis": 60000,
65
- "retry_codes_name": "non_idempotent",
66
- "retry_params_name": "default"
67
- }
68
- }
69
- }
70
- }
71
- }
@@ -1,152 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- require "google/cloud/firestore/v1/firestore_client"
17
-
18
- module Google
19
- module Cloud
20
- module Firestore
21
- # rubocop:disable LineLength
22
-
23
- ##
24
- # # Ruby Client for Google Cloud Firestore API
25
- #
26
- # [Google Cloud Firestore API][Product Documentation]:
27
- #
28
- # - [Product Documentation][]
29
- #
30
- # ## Quick Start
31
- # In order to use this library, you first need to go through the following
32
- # steps:
33
- #
34
- # 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
35
- # 2. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
36
- # 3. [Enable the Google Cloud Firestore API.](https://console.cloud.google.com/apis/library/firestore.googleapis.com)
37
- # 4. [Setup Authentication.](https://googleapis.dev/ruby/google-cloud-firestore/latest/file.AUTHENTICATION.html)
38
- #
39
- # ### Installation
40
- # ```
41
- # $ gem install google-cloud-firestore
42
- # ```
43
- #
44
- # ### Next Steps
45
- # - Read the [Google Cloud Firestore API Product documentation][Product Documentation]
46
- # to learn more about the product and see How-to Guides.
47
- # - View this [repository's main README](https://github.com/googleapis/google-cloud-ruby/blob/master/README.md)
48
- # to see the full list of Cloud APIs that we cover.
49
- #
50
- # [Product Documentation]: https://cloud.google.com/firestore
51
- #
52
- # ## Enabling Logging
53
- #
54
- # To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
55
- # The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib-2.5.0/libdoc/logger/rdoc/Logger.html) as shown below,
56
- # or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
57
- # that will write logs to [Stackdriver Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
58
- # and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
59
- #
60
- # Configuring a Ruby stdlib logger:
61
- #
62
- # ```ruby
63
- # require "logger"
64
- #
65
- # module MyLogger
66
- # LOGGER = Logger.new $stderr, level: Logger::WARN
67
- # def logger
68
- # LOGGER
69
- # end
70
- # end
71
- #
72
- # # Define a gRPC module-level logger method before grpc/logconfig.rb loads.
73
- # module GRPC
74
- # extend MyLogger
75
- # end
76
- # ```
77
- #
78
- module V1
79
- # rubocop:enable LineLength
80
-
81
- ##
82
- # The Cloud Firestore service.
83
- #
84
- # Cloud Firestore is a fast, fully managed, serverless, cloud-native NoSQL
85
- # document database that simplifies storing, syncing, and querying data for
86
- # your mobile, web, and IoT apps at global scale. Its client libraries provide
87
- # live synchronization and offline support, while its security features and
88
- # integrations with Firebase and Google Cloud Platform (GCP) accelerate
89
- # building truly serverless apps.
90
- #
91
- # @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
92
- # Provides the means for authenticating requests made by the client. This parameter can
93
- # be many types.
94
- # A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
95
- # authenticating requests made by this client.
96
- # A `String` will be treated as the path to the keyfile to be used for the construction of
97
- # credentials for this client.
98
- # A `Hash` will be treated as the contents of a keyfile to be used for the construction of
99
- # credentials for this client.
100
- # A `GRPC::Core::Channel` will be used to make calls through.
101
- # A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
102
- # should already be composed with a `GRPC::Core::CallCredentials` object.
103
- # A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
104
- # metadata for requests, generally, to give OAuth credentials.
105
- # @param scopes [Array<String>]
106
- # The OAuth scopes for this service. This parameter is ignored if
107
- # an updater_proc is supplied.
108
- # @param client_config [Hash]
109
- # A Hash for call options for each method. See
110
- # Google::Gax#construct_settings for the structure of
111
- # this data. Falls back to the default config if not specified
112
- # or the specified config is missing data points.
113
- # @param timeout [Numeric]
114
- # The default timeout, in seconds, for calls made through this client.
115
- # @param metadata [Hash]
116
- # Default metadata to be sent with each request. This can be overridden on a per call basis.
117
- # @param service_address [String]
118
- # Override for the service hostname, or `nil` to leave as the default.
119
- # @param service_port [Integer]
120
- # Override for the service port, or `nil` to leave as the default.
121
- # @param exception_transformer [Proc]
122
- # An optional proc that intercepts any exceptions raised during an API call to inject
123
- # custom error handling.
124
- def self.new \
125
- credentials: nil,
126
- scopes: nil,
127
- client_config: nil,
128
- timeout: nil,
129
- metadata: nil,
130
- service_address: nil,
131
- service_port: nil,
132
- exception_transformer: nil,
133
- lib_name: nil,
134
- lib_version: nil
135
- kwargs = {
136
- credentials: credentials,
137
- scopes: scopes,
138
- client_config: client_config,
139
- timeout: timeout,
140
- metadata: metadata,
141
- exception_transformer: exception_transformer,
142
- lib_name: lib_name,
143
- service_address: service_address,
144
- service_port: service_port,
145
- lib_version: lib_version
146
- }.select { |_, v| v != nil }
147
- Google::Cloud::Firestore::V1::FirestoreClient.new(**kwargs)
148
- end
149
- end
150
- end
151
- end
152
- end
@@ -1,42 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- require "googleauth"
17
-
18
- module Google
19
- module Cloud
20
- module Firestore
21
- module V1
22
- class Credentials < Google::Auth::Credentials
23
- SCOPE = [
24
- "https://www.googleapis.com/auth/cloud-platform",
25
- "https://www.googleapis.com/auth/datastore"
26
- ].freeze
27
- PATH_ENV_VARS = %w(FIRESTORE_CREDENTIALS
28
- FIRESTORE_KEYFILE
29
- GOOGLE_CLOUD_CREDENTIALS
30
- GOOGLE_CLOUD_KEYFILE
31
- GCLOUD_KEYFILE)
32
- JSON_ENV_VARS = %w(FIRESTORE_CREDENTIALS_JSON
33
- FIRESTORE_KEYFILE_JSON
34
- GOOGLE_CLOUD_CREDENTIALS_JSON
35
- GOOGLE_CLOUD_KEYFILE_JSON
36
- GCLOUD_KEYFILE_JSON)
37
- DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
38
- end
39
- end
40
- end
41
- end
42
- end
@@ -1,64 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Firestore
18
- module V1
19
- # A set of field paths on a document.
20
- # Used to restrict a get or update operation on a document to a subset of its
21
- # fields.
22
- # This is different from standard field masks, as this is always scoped to a
23
- # {Google::Firestore::V1::Document Document}, and takes in account the dynamic nature of {Google::Firestore::V1::Value Value}.
24
- # @!attribute [rw] field_paths
25
- # @return [Array<String>]
26
- # The list of field paths in the mask. See {Google::Firestore::V1::Document#fields Document#fields} for a field
27
- # path syntax reference.
28
- class DocumentMask; end
29
-
30
- # A precondition on a document, used for conditional operations.
31
- # @!attribute [rw] exists
32
- # @return [true, false]
33
- # When set to `true`, the target document must exist.
34
- # When set to `false`, the target document must not exist.
35
- # @!attribute [rw] update_time
36
- # @return [Google::Protobuf::Timestamp]
37
- # When set, the target document must exist and have been last updated at
38
- # that time.
39
- class Precondition; end
40
-
41
- # Options for creating a new transaction.
42
- # @!attribute [rw] read_only
43
- # @return [Google::Firestore::V1::TransactionOptions::ReadOnly]
44
- # The transaction can only be used for read operations.
45
- # @!attribute [rw] read_write
46
- # @return [Google::Firestore::V1::TransactionOptions::ReadWrite]
47
- # The transaction can be used for both read and write operations.
48
- class TransactionOptions
49
- # Options for a transaction that can be used to read and write documents.
50
- # @!attribute [rw] retry_transaction
51
- # @return [String]
52
- # An optional transaction to retry.
53
- class ReadWrite; end
54
-
55
- # Options for a transaction that can only be used to read documents.
56
- # @!attribute [rw] read_time
57
- # @return [Google::Protobuf::Timestamp]
58
- # Reads documents at the given time.
59
- # This may not be older than 60 seconds.
60
- class ReadOnly; end
61
- end
62
- end
63
- end
64
- end
@@ -1,136 +0,0 @@
1
- # Copyright 2020 Google LLC
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # https://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
-
16
- module Google
17
- module Firestore
18
- module V1
19
- # A Firestore document.
20
- #
21
- # Must not exceed 1 MiB - 4 bytes.
22
- # @!attribute [rw] name
23
- # @return [String]
24
- # The resource name of the document, for example
25
- # `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
26
- # @!attribute [rw] fields
27
- # @return [Hash{String => Google::Firestore::V1::Value}]
28
- # The document's fields.
29
- #
30
- # The map keys represent field names.
31
- #
32
- # A simple field name contains only characters `a` to `z`, `A` to `Z`,
33
- # `0` to `9`, or `_`, and must not start with `0` to `9`. For example,
34
- # `foo_bar_17`.
35
- #
36
- # Field names matching the regular expression `__.*__` are reserved. Reserved
37
- # field names are forbidden except in certain documented contexts. The map
38
- # keys, represented as UTF-8, must not exceed 1,500 bytes and cannot be
39
- # empty.
40
- #
41
- # Field paths may be used in other contexts to refer to structured fields
42
- # defined here. For `map_value`, the field path is represented by the simple
43
- # or quoted field names of the containing fields, delimited by `.`. For
44
- # example, the structured field
45
- # `"foo" : { map_value: { "x&y" : { string_value: "hello" }}}` would be
46
- # represented by the field path `foo.x&y`.
47
- #
48
- # Within a field path, a quoted field name starts and ends with `` ` `` and
49
- # may contain any character. Some characters, including `` ` ``, must be
50
- # escaped using a `\`. For example, `` `x&y` `` represents `x&y` and
51
- # `` `bak\`tik` `` represents `` bak`tik ``.
52
- # @!attribute [rw] create_time
53
- # @return [Google::Protobuf::Timestamp]
54
- # Output only. The time at which the document was created.
55
- #
56
- # This value increases monotonically when a document is deleted then
57
- # recreated. It can also be compared to values from other documents and
58
- # the `read_time` of a query.
59
- # @!attribute [rw] update_time
60
- # @return [Google::Protobuf::Timestamp]
61
- # Output only. The time at which the document was last changed.
62
- #
63
- # This value is initially set to the `create_time` then increases
64
- # monotonically with each change to the document. It can also be
65
- # compared to values from other documents and the `read_time` of a query.
66
- class Document; end
67
-
68
- # A message that can hold any of the supported value types.
69
- # @!attribute [rw] null_value
70
- # @return [Google::Protobuf::NullValue]
71
- # A null value.
72
- # @!attribute [rw] boolean_value
73
- # @return [true, false]
74
- # A boolean value.
75
- # @!attribute [rw] integer_value
76
- # @return [Integer]
77
- # An integer value.
78
- # @!attribute [rw] double_value
79
- # @return [Float]
80
- # A double value.
81
- # @!attribute [rw] timestamp_value
82
- # @return [Google::Protobuf::Timestamp]
83
- # A timestamp value.
84
- #
85
- # Precise only to microseconds. When stored, any additional precision is
86
- # rounded down.
87
- # @!attribute [rw] string_value
88
- # @return [String]
89
- # A string value.
90
- #
91
- # The string, represented as UTF-8, must not exceed 1 MiB - 89 bytes.
92
- # Only the first 1,500 bytes of the UTF-8 representation are considered by
93
- # queries.
94
- # @!attribute [rw] bytes_value
95
- # @return [String]
96
- # A bytes value.
97
- #
98
- # Must not exceed 1 MiB - 89 bytes.
99
- # Only the first 1,500 bytes are considered by queries.
100
- # @!attribute [rw] reference_value
101
- # @return [String]
102
- # A reference to a document. For example:
103
- # `projects/{project_id}/databases/{database_id}/documents/{document_path}`.
104
- # @!attribute [rw] geo_point_value
105
- # @return [Google::Type::LatLng]
106
- # A geo point value representing a point on the surface of Earth.
107
- # @!attribute [rw] array_value
108
- # @return [Google::Firestore::V1::ArrayValue]
109
- # An array value.
110
- #
111
- # Cannot directly contain another array value, though can contain an
112
- # map which contains another array.
113
- # @!attribute [rw] map_value
114
- # @return [Google::Firestore::V1::MapValue]
115
- # A map value.
116
- class Value; end
117
-
118
- # An array value.
119
- # @!attribute [rw] values
120
- # @return [Array<Google::Firestore::V1::Value>]
121
- # Values in the array.
122
- class ArrayValue; end
123
-
124
- # A map value.
125
- # @!attribute [rw] fields
126
- # @return [Hash{String => Google::Firestore::V1::Value}]
127
- # The map's fields.
128
- #
129
- # The map keys represent field names. Field names matching the regular
130
- # expression `__.*__` are reserved. Reserved field names are forbidden except
131
- # in certain documented contexts. The map keys, represented as UTF-8, must
132
- # not exceed 1,500 bytes and cannot be empty.
133
- class MapValue; end
134
- end
135
- end
136
- end