google-cloud-firestore 1.4.2 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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