google-apis-docs_v1 0.47.0 → 0.49.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.
@@ -22,6 +22,81 @@ module Google
22
22
  module Apis
23
23
  module DocsV1
24
24
 
25
+ # Accepts a suggestion. Returns a 403 forbidden error if the requesting user
26
+ # does not have edit access to the document. [Developer Preview](https://
27
+ # developers.google.com/workspace/preview).
28
+ class AcceptSuggestionRequest
29
+ include Google::Apis::Core::Hashable
30
+
31
+ # The ID of the suggestion.
32
+ # Corresponds to the JSON property `suggestionId`
33
+ # @return [String]
34
+ attr_accessor :suggestion_id
35
+
36
+ def initialize(**args)
37
+ update!(**args)
38
+ end
39
+
40
+ # Update properties of this object
41
+ def update!(**args)
42
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
43
+ end
44
+ end
45
+
46
+ # Inserts a reply Post into a CommentThread or SuggestionThread. [Developer
47
+ # Preview](https://developers.google.com/workspace/preview).
48
+ class AddCommentReplyRequest
49
+ include Google::Apis::Core::Hashable
50
+
51
+ # The ID of the CommentThread to add the reply to.
52
+ # Corresponds to the JSON property `commentId`
53
+ # @return [String]
54
+ attr_accessor :comment_id
55
+
56
+ # Represents a single post in a comment or suggestion thread. [Developer Preview]
57
+ # (https://developers.google.com/workspace/preview).
58
+ # Corresponds to the JSON property `post`
59
+ # @return [Google::Apis::DocsV1::Post]
60
+ attr_accessor :post
61
+
62
+ # The ID of the SuggestionThread to add the reply to.
63
+ # Corresponds to the JSON property `suggestionId`
64
+ # @return [String]
65
+ attr_accessor :suggestion_id
66
+
67
+ def initialize(**args)
68
+ update!(**args)
69
+ end
70
+
71
+ # Update properties of this object
72
+ def update!(**args)
73
+ @comment_id = args[:comment_id] if args.key?(:comment_id)
74
+ @post = args[:post] if args.key?(:post)
75
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
76
+ end
77
+ end
78
+
79
+ # Response message for adding a reply. [Developer Preview](https://developers.
80
+ # google.com/workspace/preview).
81
+ class AddCommentReplyResponse
82
+ include Google::Apis::Core::Hashable
83
+
84
+ # Represents a single post in a comment or suggestion thread. [Developer Preview]
85
+ # (https://developers.google.com/workspace/preview).
86
+ # Corresponds to the JSON property `post`
87
+ # @return [Google::Apis::DocsV1::Post]
88
+ attr_accessor :post
89
+
90
+ def initialize(**args)
91
+ update!(**args)
92
+ end
93
+
94
+ # Update properties of this object
95
+ def update!(**args)
96
+ @post = args[:post] if args.key?(:post)
97
+ end
98
+ end
99
+
25
100
  # Adds a document tab. When a tab is added at a given index, all subsequent tabs'
26
101
  # indexes are incremented.
27
102
  class AddDocumentTabRequest
@@ -187,6 +262,12 @@ module Google
187
262
  class BatchUpdateDocumentResponse
188
263
  include Google::Apis::Core::Hashable
189
264
 
265
+ # Whether comment updates were applied in the batch request. [Developer Preview](
266
+ # https://developers.google.com/workspace/preview).
267
+ # Corresponds to the JSON property `commentUpdateState`
268
+ # @return [String]
269
+ attr_accessor :comment_update_state
270
+
190
271
  # The ID of the document to which the updates were applied to.
191
272
  # Corresponds to the JSON property `documentId`
192
273
  # @return [String]
@@ -198,6 +279,12 @@ module Google
198
279
  # @return [Array<Google::Apis::DocsV1::Response>]
199
280
  attr_accessor :replies
200
281
 
282
+ # The suggestions which were affected by each update. This maps 1:1 with the
283
+ # updates. [Developer Preview](https://developers.google.com/workspace/preview).
284
+ # Corresponds to the JSON property `suggestionResponses`
285
+ # @return [Array<Google::Apis::DocsV1::SuggestionResponse>]
286
+ attr_accessor :suggestion_responses
287
+
201
288
  # Provides control over how write requests are executed.
202
289
  # Corresponds to the JSON property `writeControl`
203
290
  # @return [Google::Apis::DocsV1::WriteControl]
@@ -209,8 +296,10 @@ module Google
209
296
 
210
297
  # Update properties of this object
211
298
  def update!(**args)
299
+ @comment_update_state = args[:comment_update_state] if args.key?(:comment_update_state)
212
300
  @document_id = args[:document_id] if args.key?(:document_id)
213
301
  @replies = args[:replies] if args.key?(:replies)
302
+ @suggestion_responses = args[:suggestion_responses] if args.key?(:suggestion_responses)
214
303
  @write_control = args[:write_control] if args.key?(:write_control)
215
304
  end
216
305
  end
@@ -405,6 +494,135 @@ module Google
405
494
  end
406
495
  end
407
496
 
497
+ # One or more locations in the document that are tied to CommentThreads with the
498
+ # same anchorId. Note: Multiple anchors may refer to the same location. [
499
+ # Developer Preview](https://developers.google.com/workspace/preview).
500
+ class CommentAnchor
501
+ include Google::Apis::Core::Hashable
502
+
503
+ # The ID of the comment anchor.
504
+ # Corresponds to the JSON property `anchorId`
505
+ # @return [String]
506
+ attr_accessor :anchor_id
507
+
508
+ # A collection of Ranges in the document which are tied to this anchor.
509
+ # Corresponds to the JSON property `ranges`
510
+ # @return [Array<Google::Apis::DocsV1::Range>]
511
+ attr_accessor :ranges
512
+
513
+ def initialize(**args)
514
+ update!(**args)
515
+ end
516
+
517
+ # Update properties of this object
518
+ def update!(**args)
519
+ @anchor_id = args[:anchor_id] if args.key?(:anchor_id)
520
+ @ranges = args[:ranges] if args.key?(:ranges)
521
+ end
522
+ end
523
+
524
+ # Represents a single comment thread. [Developer Preview](https://developers.
525
+ # google.com/workspace/preview).
526
+ class CommentThread
527
+ include Google::Apis::Core::Hashable
528
+
529
+ # The ID of the CommentAnchor in the document that this thread is tied to.
530
+ # Multiple comment threads may be anchored to the same CommentAnchor.
531
+ # Corresponds to the JSON property `anchorId`
532
+ # @return [String]
533
+ attr_accessor :anchor_id
534
+
535
+ # The unique ID of the comment thread.
536
+ # Corresponds to the JSON property `commentId`
537
+ # @return [String]
538
+ attr_accessor :comment_id
539
+
540
+ # Represents a single post in a comment or suggestion thread. [Developer Preview]
541
+ # (https://developers.google.com/workspace/preview).
542
+ # Corresponds to the JSON property `headPost`
543
+ # @return [Google::Apis::DocsV1::Post]
544
+ attr_accessor :head_post
545
+
546
+ # The quoted text from the document when the comment was created, formatted as
547
+ # plain-text.
548
+ # Corresponds to the JSON property `plainTextQuote`
549
+ # @return [String]
550
+ attr_accessor :plain_text_quote
551
+
552
+ # Replies to the head post.
553
+ # Corresponds to the JSON property `replies`
554
+ # @return [Array<Google::Apis::DocsV1::Post>]
555
+ attr_accessor :replies
556
+
557
+ # Whether the thread is open or resolved.
558
+ # Corresponds to the JSON property `status`
559
+ # @return [String]
560
+ attr_accessor :status
561
+
562
+ def initialize(**args)
563
+ update!(**args)
564
+ end
565
+
566
+ # Update properties of this object
567
+ def update!(**args)
568
+ @anchor_id = args[:anchor_id] if args.key?(:anchor_id)
569
+ @comment_id = args[:comment_id] if args.key?(:comment_id)
570
+ @head_post = args[:head_post] if args.key?(:head_post)
571
+ @plain_text_quote = args[:plain_text_quote] if args.key?(:plain_text_quote)
572
+ @replies = args[:replies] if args.key?(:replies)
573
+ @status = args[:status] if args.key?(:status)
574
+ end
575
+ end
576
+
577
+ # Creates a new DropdownDefinition in the document.
578
+ class CreateDropdownDefinitionRequest
579
+ include Google::Apis::Core::Hashable
580
+
581
+ # A dropdown definition in the document.
582
+ # Corresponds to the JSON property `dropdownDefinition`
583
+ # @return [Google::Apis::DocsV1::DropdownDefinition]
584
+ attr_accessor :dropdown_definition
585
+
586
+ # The ID of the tab to create the dropdown definition in. When omitted, the
587
+ # request is applied to the first tab. In a document containing a single tab: -
588
+ # If provided, must match the singular tab's ID. - If omitted, the request
589
+ # applies to the singular tab. In a document containing multiple tabs: - If
590
+ # provided, the request applies to the specified tab. - If omitted, the request
591
+ # applies to the first tab in the document.
592
+ # Corresponds to the JSON property `tabId`
593
+ # @return [String]
594
+ attr_accessor :tab_id
595
+
596
+ def initialize(**args)
597
+ update!(**args)
598
+ end
599
+
600
+ # Update properties of this object
601
+ def update!(**args)
602
+ @dropdown_definition = args[:dropdown_definition] if args.key?(:dropdown_definition)
603
+ @tab_id = args[:tab_id] if args.key?(:tab_id)
604
+ end
605
+ end
606
+
607
+ # Response message for creating a dropdown definition.
608
+ class CreateDropdownDefinitionResponse
609
+ include Google::Apis::Core::Hashable
610
+
611
+ # A dropdown definition in the document.
612
+ # Corresponds to the JSON property `dropdownDefinition`
613
+ # @return [Google::Apis::DocsV1::DropdownDefinition]
614
+ attr_accessor :dropdown_definition
615
+
616
+ def initialize(**args)
617
+ update!(**args)
618
+ end
619
+
620
+ # Update properties of this object
621
+ def update!(**args)
622
+ @dropdown_definition = args[:dropdown_definition] if args.key?(:dropdown_definition)
623
+ end
624
+ end
625
+
408
626
  # Creates a Footer. The new footer is applied to the SectionStyle at the
409
627
  # location of the SectionBreak if specified, otherwise it is applied to the
410
628
  # DocumentStyle. If a footer of the specified type already exists, a 400 bad
@@ -921,6 +1139,61 @@ module Google
921
1139
  end
922
1140
  end
923
1141
 
1142
+ # Deletes a reply Post from a CommentThread or SuggestionThread. Returns a 400
1143
+ # bad request error if: - The requesting user is not the author of the post. -
1144
+ # The reply post contains an action. - The reply post contains an assignee. [
1145
+ # Developer Preview](https://developers.google.com/workspace/preview).
1146
+ class DeleteCommentReplyRequest
1147
+ include Google::Apis::Core::Hashable
1148
+
1149
+ # The ID of the CommentThread which the post belongs to.
1150
+ # Corresponds to the JSON property `commentId`
1151
+ # @return [String]
1152
+ attr_accessor :comment_id
1153
+
1154
+ # The ID of the reply Post being deleted.
1155
+ # Corresponds to the JSON property `postId`
1156
+ # @return [String]
1157
+ attr_accessor :post_id
1158
+
1159
+ # The ID of the SuggestionThread which the post belongs to.
1160
+ # Corresponds to the JSON property `suggestionId`
1161
+ # @return [String]
1162
+ attr_accessor :suggestion_id
1163
+
1164
+ def initialize(**args)
1165
+ update!(**args)
1166
+ end
1167
+
1168
+ # Update properties of this object
1169
+ def update!(**args)
1170
+ @comment_id = args[:comment_id] if args.key?(:comment_id)
1171
+ @post_id = args[:post_id] if args.key?(:post_id)
1172
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
1173
+ end
1174
+ end
1175
+
1176
+ # Deletes a CommentThread. Returns a 400 bad request error if the requesting
1177
+ # user is not the author of the headPost. [Developer Preview](https://developers.
1178
+ # google.com/workspace/preview).
1179
+ class DeleteCommentRequest
1180
+ include Google::Apis::Core::Hashable
1181
+
1182
+ # The ID of the CommentThread that is being deleted.
1183
+ # Corresponds to the JSON property `commentId`
1184
+ # @return [String]
1185
+ attr_accessor :comment_id
1186
+
1187
+ def initialize(**args)
1188
+ update!(**args)
1189
+ end
1190
+
1191
+ # Update properties of this object
1192
+ def update!(**args)
1193
+ @comment_id = args[:comment_id] if args.key?(:comment_id)
1194
+ end
1195
+ end
1196
+
924
1197
  # Deletes content from the document.
925
1198
  class DeleteContentRangeRequest
926
1199
  include Google::Apis::Core::Hashable
@@ -940,6 +1213,38 @@ module Google
940
1213
  end
941
1214
  end
942
1215
 
1216
+ # Deletes a DropdownDefinition. If the dropdown definition is referenced by any
1217
+ # dropdown instances (chips) in the document, a 400 bad request error is
1218
+ # returned.
1219
+ class DeleteDropdownDefinitionRequest
1220
+ include Google::Apis::Core::Hashable
1221
+
1222
+ # The ID of the DropdownDefinition to delete.
1223
+ # Corresponds to the JSON property `dropdownDefinitionId`
1224
+ # @return [String]
1225
+ attr_accessor :dropdown_definition_id
1226
+
1227
+ # The ID of the tab that contains the dropdown definition to delete. When
1228
+ # omitted, the request is applied to the first tab. In a document containing a
1229
+ # single tab: - If provided, must match the singular tab's ID. - If omitted, the
1230
+ # request applies to the singular tab. In a document containing multiple tabs: -
1231
+ # If provided, the request applies to the specified tab. - If omitted, the
1232
+ # request applies to the first tab in the document.
1233
+ # Corresponds to the JSON property `tabId`
1234
+ # @return [String]
1235
+ attr_accessor :tab_id
1236
+
1237
+ def initialize(**args)
1238
+ update!(**args)
1239
+ end
1240
+
1241
+ # Update properties of this object
1242
+ def update!(**args)
1243
+ @dropdown_definition_id = args[:dropdown_definition_id] if args.key?(:dropdown_definition_id)
1244
+ @tab_id = args[:tab_id] if args.key?(:tab_id)
1245
+ end
1246
+ end
1247
+
943
1248
  # Deletes a Footer from the document.
944
1249
  class DeleteFooterRequest
945
1250
  include Google::Apis::Core::Hashable
@@ -1091,6 +1396,27 @@ module Google
1091
1396
  end
1092
1397
  end
1093
1398
 
1399
+ # Deletes a suggestion. Returns a 403 forbidden error if the requesting user is
1400
+ # not the author of the suggestion. [Developer Preview](https://developers.
1401
+ # google.com/workspace/preview).
1402
+ class DeleteSuggestionRequest
1403
+ include Google::Apis::Core::Hashable
1404
+
1405
+ # The ID of the suggestion.
1406
+ # Corresponds to the JSON property `suggestionId`
1407
+ # @return [String]
1408
+ attr_accessor :suggestion_id
1409
+
1410
+ def initialize(**args)
1411
+ update!(**args)
1412
+ end
1413
+
1414
+ # Update properties of this object
1415
+ def update!(**args)
1416
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
1417
+ end
1418
+ end
1419
+
1094
1420
  # Deletes a tab. If the tab has child tabs, they are deleted as well.
1095
1421
  class DeleteTabRequest
1096
1422
  include Google::Apis::Core::Hashable
@@ -1183,6 +1509,20 @@ module Google
1183
1509
  # @return [Google::Apis::DocsV1::Body]
1184
1510
  attr_accessor :body
1185
1511
 
1512
+ # Output only. The comments associated with the document. Only populated if the
1513
+ # commentsViewMode parameter is set to require comments (such as `
1514
+ # COMMENTS_VIEW_MODE_INCLUDED`). [Developer Preview](https://developers.google.
1515
+ # com/workspace/preview).
1516
+ # Corresponds to the JSON property `comments`
1517
+ # @return [Array<Google::Apis::DocsV1::CommentThread>]
1518
+ attr_accessor :comments
1519
+
1520
+ # Output only. The comments view mode applied to the document. [Developer
1521
+ # Preview](https://developers.google.com/workspace/preview).
1522
+ # Corresponds to the JSON property `commentsViewMode`
1523
+ # @return [String]
1524
+ attr_accessor :comments_view_mode
1525
+
1186
1526
  # Output only. The ID of the document.
1187
1527
  # Corresponds to the JSON property `documentId`
1188
1528
  # @return [String]
@@ -1295,6 +1635,14 @@ module Google
1295
1635
  # @return [Hash<String,Google::Apis::DocsV1::SuggestedNamedStyles>]
1296
1636
  attr_accessor :suggested_named_styles_changes
1297
1637
 
1638
+ # Output only. The suggestions associated with the document. Only populated if
1639
+ # the commentsViewMode parameter is set to require comments (such as `
1640
+ # COMMENTS_VIEW_MODE_INCLUDED`). [Developer Preview](https://developers.google.
1641
+ # com/workspace/preview).
1642
+ # Corresponds to the JSON property `suggestions`
1643
+ # @return [Array<Google::Apis::DocsV1::SuggestionThread>]
1644
+ attr_accessor :suggestions
1645
+
1298
1646
  # Output only. The suggestions view mode applied to the document. Note: When
1299
1647
  # editing a document, changes must be based on a document with
1300
1648
  # SUGGESTIONS_INLINE.
@@ -1321,6 +1669,8 @@ module Google
1321
1669
  # Update properties of this object
1322
1670
  def update!(**args)
1323
1671
  @body = args[:body] if args.key?(:body)
1672
+ @comments = args[:comments] if args.key?(:comments)
1673
+ @comments_view_mode = args[:comments_view_mode] if args.key?(:comments_view_mode)
1324
1674
  @document_id = args[:document_id] if args.key?(:document_id)
1325
1675
  @document_style = args[:document_style] if args.key?(:document_style)
1326
1676
  @footers = args[:footers] if args.key?(:footers)
@@ -1334,6 +1684,7 @@ module Google
1334
1684
  @revision_id = args[:revision_id] if args.key?(:revision_id)
1335
1685
  @suggested_document_style_changes = args[:suggested_document_style_changes] if args.key?(:suggested_document_style_changes)
1336
1686
  @suggested_named_styles_changes = args[:suggested_named_styles_changes] if args.key?(:suggested_named_styles_changes)
1687
+ @suggestions = args[:suggestions] if args.key?(:suggestions)
1337
1688
  @suggestions_view_mode = args[:suggestions_view_mode] if args.key?(:suggestions_view_mode)
1338
1689
  @tabs = args[:tabs] if args.key?(:tabs)
1339
1690
  @title = args[:title] if args.key?(:title)
@@ -1687,11 +2038,24 @@ module Google
1687
2038
  # @return [Google::Apis::DocsV1::Body]
1688
2039
  attr_accessor :body
1689
2040
 
2041
+ # The comment anchors in a document tab, keyed by anchor ID. Only populated if
2042
+ # the commentsViewMode parameter is set to require comments (such as `
2043
+ # COMMENTS_VIEW_MODE_INCLUDED`). [Developer Preview](https://developers.google.
2044
+ # com/workspace/preview).
2045
+ # Corresponds to the JSON property `commentAnchors`
2046
+ # @return [Hash<String,Google::Apis::DocsV1::CommentAnchor>]
2047
+ attr_accessor :comment_anchors
2048
+
1690
2049
  # The style of the document.
1691
2050
  # Corresponds to the JSON property `documentStyle`
1692
2051
  # @return [Google::Apis::DocsV1::DocumentStyle]
1693
2052
  attr_accessor :document_style
1694
2053
 
2054
+ # The dropdown definitions in a document tab, keyed by dropdown definition ID.
2055
+ # Corresponds to the JSON property `dropdownDefinitions`
2056
+ # @return [Hash<String,Google::Apis::DocsV1::DropdownDefinition>]
2057
+ attr_accessor :dropdown_definitions
2058
+
1695
2059
  # The footers in the document tab, keyed by footer ID.
1696
2060
  # Corresponds to the JSON property `footers`
1697
2061
  # @return [Hash<String,Google::Apis::DocsV1::Footer>]
@@ -1751,7 +2115,9 @@ module Google
1751
2115
  # Update properties of this object
1752
2116
  def update!(**args)
1753
2117
  @body = args[:body] if args.key?(:body)
2118
+ @comment_anchors = args[:comment_anchors] if args.key?(:comment_anchors)
1754
2119
  @document_style = args[:document_style] if args.key?(:document_style)
2120
+ @dropdown_definitions = args[:dropdown_definitions] if args.key?(:dropdown_definitions)
1755
2121
  @footers = args[:footers] if args.key?(:footers)
1756
2122
  @footnotes = args[:footnotes] if args.key?(:footnotes)
1757
2123
  @headers = args[:headers] if args.key?(:headers)
@@ -1765,6 +2131,273 @@ module Google
1765
2131
  end
1766
2132
  end
1767
2133
 
2134
+ # A dropdown in the document. The chip is displayed as a dropdown menu that
2135
+ # allows users to select an option from a configurable list of options.
2136
+ class Dropdown
2137
+ include Google::Apis::Core::Hashable
2138
+
2139
+ # The ID of this dropdown.
2140
+ # Corresponds to the JSON property `dropdownId`
2141
+ # @return [String]
2142
+ attr_accessor :dropdown_id
2143
+
2144
+ # Properties specific to a dropdown.
2145
+ # Corresponds to the JSON property `dropdownProperties`
2146
+ # @return [Google::Apis::DocsV1::DropdownProperties]
2147
+ attr_accessor :dropdown_properties
2148
+
2149
+ # IDs for suggestions that remove this dropdown from the document. If empty,
2150
+ # then this dropdown isn't suggested for deletion.
2151
+ # Corresponds to the JSON property `suggestedDeletionIds`
2152
+ # @return [Array<String>]
2153
+ attr_accessor :suggested_deletion_ids
2154
+
2155
+ # The suggested properties changes to this dropdown, keyed by suggestion ID.
2156
+ # Corresponds to the JSON property `suggestedDropdownPropertiesChanges`
2157
+ # @return [Hash<String,Google::Apis::DocsV1::SuggestedDropdownProperties>]
2158
+ attr_accessor :suggested_dropdown_properties_changes
2159
+
2160
+ # IDs for suggestions that insert this dropdown into the document. If empty,
2161
+ # then this dropdown isn't a suggested insertion.
2162
+ # Corresponds to the JSON property `suggestedInsertionIds`
2163
+ # @return [Array<String>]
2164
+ attr_accessor :suggested_insertion_ids
2165
+
2166
+ # The suggested text style changes to this dropdown, keyed by suggestion ID.
2167
+ # Corresponds to the JSON property `suggestedTextStyleChanges`
2168
+ # @return [Hash<String,Google::Apis::DocsV1::SuggestedTextStyle>]
2169
+ attr_accessor :suggested_text_style_changes
2170
+
2171
+ # Represents the styling that can be applied to text. Inherited text styles are
2172
+ # represented as unset fields in this message. A text style's parent depends on
2173
+ # where the text style is defined: * The TextStyle of text in a Paragraph
2174
+ # inherits from the paragraph's corresponding named style type. * The TextStyle
2175
+ # on a named style inherits from the normal text named style. * The TextStyle of
2176
+ # the normal text named style inherits from the default text style in the Docs
2177
+ # editor. * The TextStyle on a Paragraph element that's contained in a table may
2178
+ # inherit its text style from the table style. If the text style does not
2179
+ # inherit from a parent, unsetting fields will revert the style to a value
2180
+ # matching the defaults in the Docs editor.
2181
+ # Corresponds to the JSON property `textStyle`
2182
+ # @return [Google::Apis::DocsV1::TextStyle]
2183
+ attr_accessor :text_style
2184
+
2185
+ def initialize(**args)
2186
+ update!(**args)
2187
+ end
2188
+
2189
+ # Update properties of this object
2190
+ def update!(**args)
2191
+ @dropdown_id = args[:dropdown_id] if args.key?(:dropdown_id)
2192
+ @dropdown_properties = args[:dropdown_properties] if args.key?(:dropdown_properties)
2193
+ @suggested_deletion_ids = args[:suggested_deletion_ids] if args.key?(:suggested_deletion_ids)
2194
+ @suggested_dropdown_properties_changes = args[:suggested_dropdown_properties_changes] if args.key?(:suggested_dropdown_properties_changes)
2195
+ @suggested_insertion_ids = args[:suggested_insertion_ids] if args.key?(:suggested_insertion_ids)
2196
+ @suggested_text_style_changes = args[:suggested_text_style_changes] if args.key?(:suggested_text_style_changes)
2197
+ @text_style = args[:text_style] if args.key?(:text_style)
2198
+ end
2199
+ end
2200
+
2201
+ # A dropdown definition in the document.
2202
+ class DropdownDefinition
2203
+ include Google::Apis::Core::Hashable
2204
+
2205
+ # The ID of this dropdown definition. If you specify an ID, it must be unique
2206
+ # among all IDs in the tab. The ID must start with `kix.` and match regex `^kix\.
2207
+ # [a-zA-Z0-9_-]`2,14`$` (length 6-18 chars). If you don't specify an ID, a
2208
+ # unique one is generated.
2209
+ # Corresponds to the JSON property `dropdownDefinitionId`
2210
+ # @return [String]
2211
+ attr_accessor :dropdown_definition_id
2212
+
2213
+ # Properties of a dropdown definition.
2214
+ # Corresponds to the JSON property `dropdownDefinitionProperties`
2215
+ # @return [Google::Apis::DocsV1::DropdownDefinitionProperties]
2216
+ attr_accessor :dropdown_definition_properties
2217
+
2218
+ # ID for suggestion that deletes this dropdown definition.
2219
+ # Corresponds to the JSON property `suggestedDeletionId`
2220
+ # @return [String]
2221
+ attr_accessor :suggested_deletion_id
2222
+
2223
+ # Suggested property changes to this definition, keyed by suggestion ID.
2224
+ # Corresponds to the JSON property `suggestedDropdownDefinitionPropertiesChanges`
2225
+ # @return [Hash<String,Google::Apis::DocsV1::SuggestedDropdownDefinitionProperties>]
2226
+ attr_accessor :suggested_dropdown_definition_properties_changes
2227
+
2228
+ # ID for suggestion that inserts this dropdown definition.
2229
+ # Corresponds to the JSON property `suggestedInsertionId`
2230
+ # @return [String]
2231
+ attr_accessor :suggested_insertion_id
2232
+
2233
+ def initialize(**args)
2234
+ update!(**args)
2235
+ end
2236
+
2237
+ # Update properties of this object
2238
+ def update!(**args)
2239
+ @dropdown_definition_id = args[:dropdown_definition_id] if args.key?(:dropdown_definition_id)
2240
+ @dropdown_definition_properties = args[:dropdown_definition_properties] if args.key?(:dropdown_definition_properties)
2241
+ @suggested_deletion_id = args[:suggested_deletion_id] if args.key?(:suggested_deletion_id)
2242
+ @suggested_dropdown_definition_properties_changes = args[:suggested_dropdown_definition_properties_changes] if args.key?(:suggested_dropdown_definition_properties_changes)
2243
+ @suggested_insertion_id = args[:suggested_insertion_id] if args.key?(:suggested_insertion_id)
2244
+ end
2245
+ end
2246
+
2247
+ # Properties of a dropdown definition.
2248
+ class DropdownDefinitionProperties
2249
+ include Google::Apis::Core::Hashable
2250
+
2251
+ # The list of options defined by this dropdown definition. A dropdown definition
2252
+ # must have at least 2 options and at most 50 options.
2253
+ # Corresponds to the JSON property `options`
2254
+ # @return [Array<Google::Apis::DocsV1::DropdownOption>]
2255
+ attr_accessor :options
2256
+
2257
+ # The title of the dropdown definition.
2258
+ # Corresponds to the JSON property `title`
2259
+ # @return [String]
2260
+ attr_accessor :title
2261
+
2262
+ def initialize(**args)
2263
+ update!(**args)
2264
+ end
2265
+
2266
+ # Update properties of this object
2267
+ def update!(**args)
2268
+ @options = args[:options] if args.key?(:options)
2269
+ @title = args[:title] if args.key?(:title)
2270
+ end
2271
+ end
2272
+
2273
+ # A mask that indicates which of the fields on the base
2274
+ # DropdownDefinitionProperties have been changed in this suggestion. For any
2275
+ # field set to true, there's a new suggested value.
2276
+ class DropdownDefinitionPropertiesSuggestionState
2277
+ include Google::Apis::Core::Hashable
2278
+
2279
+ # Indicates if there was a suggested change to options.
2280
+ # Corresponds to the JSON property `optionsSuggested`
2281
+ # @return [Boolean]
2282
+ attr_accessor :options_suggested
2283
+ alias_method :options_suggested?, :options_suggested
2284
+
2285
+ # Indicates if there was a suggested change to title.
2286
+ # Corresponds to the JSON property `titleSuggested`
2287
+ # @return [Boolean]
2288
+ attr_accessor :title_suggested
2289
+ alias_method :title_suggested?, :title_suggested
2290
+
2291
+ def initialize(**args)
2292
+ update!(**args)
2293
+ end
2294
+
2295
+ # Update properties of this object
2296
+ def update!(**args)
2297
+ @options_suggested = args[:options_suggested] if args.key?(:options_suggested)
2298
+ @title_suggested = args[:title_suggested] if args.key?(:title_suggested)
2299
+ end
2300
+ end
2301
+
2302
+ # An option in a Dropdown.
2303
+ class DropdownOption
2304
+ include Google::Apis::Core::Hashable
2305
+
2306
+ # The display value of this dropdown option.
2307
+ # Corresponds to the JSON property `displayValue`
2308
+ # @return [String]
2309
+ attr_accessor :display_value
2310
+
2311
+ # The ID of this dropdown option. If you specify an ID, it must be unique among
2312
+ # all options in this dropdown definition. The ID must start with `dropdownItem.`
2313
+ # and match regex `^dropdownItem\.[a-zA-Z0-9_-]`2,14`$` (length 15-27 chars).
2314
+ # If you don't specify an ID, a unique one is generated.
2315
+ # Corresponds to the JSON property `optionId`
2316
+ # @return [String]
2317
+ attr_accessor :option_id
2318
+
2319
+ # Represents the styling that can be applied to text. Inherited text styles are
2320
+ # represented as unset fields in this message. A text style's parent depends on
2321
+ # where the text style is defined: * The TextStyle of text in a Paragraph
2322
+ # inherits from the paragraph's corresponding named style type. * The TextStyle
2323
+ # on a named style inherits from the normal text named style. * The TextStyle of
2324
+ # the normal text named style inherits from the default text style in the Docs
2325
+ # editor. * The TextStyle on a Paragraph element that's contained in a table may
2326
+ # inherit its text style from the table style. If the text style does not
2327
+ # inherit from a parent, unsetting fields will revert the style to a value
2328
+ # matching the defaults in the Docs editor.
2329
+ # Corresponds to the JSON property `textStyle`
2330
+ # @return [Google::Apis::DocsV1::TextStyle]
2331
+ attr_accessor :text_style
2332
+
2333
+ def initialize(**args)
2334
+ update!(**args)
2335
+ end
2336
+
2337
+ # Update properties of this object
2338
+ def update!(**args)
2339
+ @display_value = args[:display_value] if args.key?(:display_value)
2340
+ @option_id = args[:option_id] if args.key?(:option_id)
2341
+ @text_style = args[:text_style] if args.key?(:text_style)
2342
+ end
2343
+ end
2344
+
2345
+ # Properties specific to a dropdown.
2346
+ class DropdownProperties
2347
+ include Google::Apis::Core::Hashable
2348
+
2349
+ # The human-readable display text of the currently selected item. This field is
2350
+ # populated by the server based on the dropdown definition and the selected
2351
+ # option ID. It may differ from `DropdownOption.display_value` if the underlying
2352
+ # option definition was modified or deleted, or during pending suggested changes.
2353
+ # Corresponds to the JSON property `displayValue`
2354
+ # @return [String]
2355
+ attr_accessor :display_value
2356
+
2357
+ # The ID of the DropdownDefinition that defines the options for this dropdown.
2358
+ # Corresponds to the JSON property `dropdownDefinitionId`
2359
+ # @return [String]
2360
+ attr_accessor :dropdown_definition_id
2361
+
2362
+ # The ID of the selected option in this dropdown.
2363
+ # Corresponds to the JSON property `selectedOptionId`
2364
+ # @return [String]
2365
+ attr_accessor :selected_option_id
2366
+
2367
+ def initialize(**args)
2368
+ update!(**args)
2369
+ end
2370
+
2371
+ # Update properties of this object
2372
+ def update!(**args)
2373
+ @display_value = args[:display_value] if args.key?(:display_value)
2374
+ @dropdown_definition_id = args[:dropdown_definition_id] if args.key?(:dropdown_definition_id)
2375
+ @selected_option_id = args[:selected_option_id] if args.key?(:selected_option_id)
2376
+ end
2377
+ end
2378
+
2379
+ # A mask that indicates which of the fields on the base DropdownProperties have
2380
+ # been changed in this suggestion. For any field set to true, there's a new
2381
+ # suggested value.
2382
+ class DropdownPropertiesSuggestionState
2383
+ include Google::Apis::Core::Hashable
2384
+
2385
+ # Indicates if there was a suggested change to selected_option_id.
2386
+ # Corresponds to the JSON property `selectedOptionIdSuggested`
2387
+ # @return [Boolean]
2388
+ attr_accessor :selected_option_id_suggested
2389
+ alias_method :selected_option_id_suggested?, :selected_option_id_suggested
2390
+
2391
+ def initialize(**args)
2392
+ update!(**args)
2393
+ end
2394
+
2395
+ # Update properties of this object
2396
+ def update!(**args)
2397
+ @selected_option_id_suggested = args[:selected_option_id_suggested] if args.key?(:selected_option_id_suggested)
2398
+ end
2399
+ end
2400
+
1768
2401
  # The properties of an embedded drawing and used to differentiate the object
1769
2402
  # type. An embedded drawing is one that's created and edited within a document.
1770
2403
  # Note that extensive details are not supported.
@@ -2603,6 +3236,63 @@ module Google
2603
3236
  end
2604
3237
  end
2605
3238
 
3239
+ # Inserts a CommentThread into the document. [Developer Preview](https://
3240
+ # developers.google.com/workspace/preview).
3241
+ class InsertCommentRequest
3242
+ include Google::Apis::Core::Hashable
3243
+
3244
+ # Optional. The email address of the assignee of the comment. Leave empty for a
3245
+ # non-assigned comment. May not exceed 2048 UTF-8 code units.
3246
+ # Corresponds to the JSON property `assigneeEmailAddress`
3247
+ # @return [String]
3248
+ attr_accessor :assignee_email_address
3249
+
3250
+ # The text of the comment, as plain text. This text content will be handled
3251
+ # similarly to comments created in the Docs editor. It will have similar
3252
+ # behaviors for formatting, notifications, etc. This field cannot be empty, and
3253
+ # must not exceed 2048 UTF-8 code units.
3254
+ # Corresponds to the JSON property `content`
3255
+ # @return [String]
3256
+ attr_accessor :content
3257
+
3258
+ # Specifies a contiguous range of text.
3259
+ # Corresponds to the JSON property `range`
3260
+ # @return [Google::Apis::DocsV1::Range]
3261
+ attr_accessor :range
3262
+
3263
+ def initialize(**args)
3264
+ update!(**args)
3265
+ end
3266
+
3267
+ # Update properties of this object
3268
+ def update!(**args)
3269
+ @assignee_email_address = args[:assignee_email_address] if args.key?(:assignee_email_address)
3270
+ @content = args[:content] if args.key?(:content)
3271
+ @range = args[:range] if args.key?(:range)
3272
+ end
3273
+ end
3274
+
3275
+ # Response message for inserting a comment. [Developer Preview](https://
3276
+ # developers.google.com/workspace/preview).
3277
+ class InsertCommentResponse
3278
+ include Google::Apis::Core::Hashable
3279
+
3280
+ # Represents a single comment thread. [Developer Preview](https://developers.
3281
+ # google.com/workspace/preview).
3282
+ # Corresponds to the JSON property `commentThread`
3283
+ # @return [Google::Apis::DocsV1::CommentThread]
3284
+ attr_accessor :comment_thread
3285
+
3286
+ def initialize(**args)
3287
+ update!(**args)
3288
+ end
3289
+
3290
+ # Update properties of this object
3291
+ def update!(**args)
3292
+ @comment_thread = args[:comment_thread] if args.key?(:comment_thread)
3293
+ end
3294
+ end
3295
+
2606
3296
  # Inserts a date at the specified location.
2607
3297
  class InsertDateRequest
2608
3298
  include Google::Apis::Core::Hashable
@@ -2629,9 +3319,70 @@ module Google
2629
3319
 
2630
3320
  # Update properties of this object
2631
3321
  def update!(**args)
2632
- @date_element_properties = args[:date_element_properties] if args.key?(:date_element_properties)
3322
+ @date_element_properties = args[:date_element_properties] if args.key?(:date_element_properties)
3323
+ @end_of_segment_location = args[:end_of_segment_location] if args.key?(:end_of_segment_location)
3324
+ @location = args[:location] if args.key?(:location)
3325
+ end
3326
+ end
3327
+
3328
+ # Inserts a Dropdown at the specified location.
3329
+ class InsertDropdownRequest
3330
+ include Google::Apis::Core::Hashable
3331
+
3332
+ # Required. The DropdownDefinition ID.
3333
+ # Corresponds to the JSON property `dropdownDefinitionId`
3334
+ # @return [String]
3335
+ attr_accessor :dropdown_definition_id
3336
+
3337
+ # Location at the end of a body, header, footer or footnote. The location is
3338
+ # immediately before the last newline in the document segment.
3339
+ # Corresponds to the JSON property `endOfSegmentLocation`
3340
+ # @return [Google::Apis::DocsV1::EndOfSegmentLocation]
3341
+ attr_accessor :end_of_segment_location
3342
+
3343
+ # A particular location in the document.
3344
+ # Corresponds to the JSON property `location`
3345
+ # @return [Google::Apis::DocsV1::Location]
3346
+ attr_accessor :location
3347
+
3348
+ # Optional initial value for the dropdown. If this field is not specified, the
3349
+ # new dropdown will default to selecting the first option defined in the
3350
+ # dropdown definition. If this field is specified but does not reference a valid
3351
+ # option in the dropdown definition, a 400 bad request error is returned.
3352
+ # Corresponds to the JSON property `selectedOptionId`
3353
+ # @return [String]
3354
+ attr_accessor :selected_option_id
3355
+
3356
+ def initialize(**args)
3357
+ update!(**args)
3358
+ end
3359
+
3360
+ # Update properties of this object
3361
+ def update!(**args)
3362
+ @dropdown_definition_id = args[:dropdown_definition_id] if args.key?(:dropdown_definition_id)
2633
3363
  @end_of_segment_location = args[:end_of_segment_location] if args.key?(:end_of_segment_location)
2634
3364
  @location = args[:location] if args.key?(:location)
3365
+ @selected_option_id = args[:selected_option_id] if args.key?(:selected_option_id)
3366
+ end
3367
+ end
3368
+
3369
+ # The result of inserting a Dropdown.
3370
+ class InsertDropdownResponse
3371
+ include Google::Apis::Core::Hashable
3372
+
3373
+ # A dropdown in the document. The chip is displayed as a dropdown menu that
3374
+ # allows users to select an option from a configurable list of options.
3375
+ # Corresponds to the JSON property `dropdown`
3376
+ # @return [Google::Apis::DocsV1::Dropdown]
3377
+ attr_accessor :dropdown
3378
+
3379
+ def initialize(**args)
3380
+ update!(**args)
3381
+ end
3382
+
3383
+ # Update properties of this object
3384
+ def update!(**args)
3385
+ @dropdown = args[:dropdown] if args.key?(:dropdown)
2635
3386
  end
2636
3387
  end
2637
3388
 
@@ -3807,6 +4558,12 @@ module Google
3807
4558
  # @return [Google::Apis::DocsV1::DateElement]
3808
4559
  attr_accessor :date_element
3809
4560
 
4561
+ # A dropdown in the document. The chip is displayed as a dropdown menu that
4562
+ # allows users to select an option from a configurable list of options.
4563
+ # Corresponds to the JSON property `dropdown`
4564
+ # @return [Google::Apis::DocsV1::Dropdown]
4565
+ attr_accessor :dropdown
4566
+
3810
4567
  # The zero-base end index of this paragraph element, exclusive, in UTF-16 code
3811
4568
  # units.
3812
4569
  # Corresponds to the JSON property `endIndex`
@@ -3871,6 +4628,7 @@ module Google
3871
4628
  @auto_text = args[:auto_text] if args.key?(:auto_text)
3872
4629
  @column_break = args[:column_break] if args.key?(:column_break)
3873
4630
  @date_element = args[:date_element] if args.key?(:date_element)
4631
+ @dropdown = args[:dropdown] if args.key?(:dropdown)
3874
4632
  @end_index = args[:end_index] if args.key?(:end_index)
3875
4633
  @equation = args[:equation] if args.key?(:equation)
3876
4634
  @footnote_reference = args[:footnote_reference] if args.key?(:footnote_reference)
@@ -4507,6 +5265,157 @@ module Google
4507
5265
  end
4508
5266
  end
4509
5267
 
5268
+ # Represents a single post in a comment or suggestion thread. [Developer Preview]
5269
+ # (https://developers.google.com/workspace/preview).
5270
+ class Post
5271
+ include Google::Apis::Core::Hashable
5272
+
5273
+ # Optional. The email of the user who is being newly assigned to the thread as
5274
+ # part of this post. Returns a 400 bad request error if: - The parent thread is
5275
+ # a CommentThread whose headPost does not have an assignee. - The parent thread
5276
+ # is a SuggestionThread. - commentAction is specified as `RESOLVE` or `REOPEN`. -
5277
+ # `assigneeEmail` exceeds 2048 UTF-8 code units.
5278
+ # Corresponds to the JSON property `assigneeEmail`
5279
+ # @return [String]
5280
+ attr_accessor :assignee_email
5281
+
5282
+ # Represents a user who authored a comment or suggestion post. [Developer
5283
+ # Preview](https://developers.google.com/workspace/preview).
5284
+ # Corresponds to the JSON property `author`
5285
+ # @return [Google::Apis::DocsV1::PostAuthor]
5286
+ attr_accessor :author
5287
+
5288
+ # Optional. The action type for comment posts.
5289
+ # Corresponds to the JSON property `commentAction`
5290
+ # @return [String]
5291
+ attr_accessor :comment_action
5292
+
5293
+ # The content of the post. Required to be non-empty if commentAction is not `
5294
+ # RESOLVE` or `REOPEN`. This text content will be handled similarly to comments
5295
+ # created in the Docs editor. It will have similar behaviors for formatting,
5296
+ # notifications, etc. May not exceed 2048 UTF-8 code units.
5297
+ # Corresponds to the JSON property `content`
5298
+ # @return [String]
5299
+ attr_accessor :content
5300
+
5301
+ # Output only. The content of the post as HTML.
5302
+ # Corresponds to the JSON property `contentHtml`
5303
+ # @return [String]
5304
+ attr_accessor :content_html
5305
+
5306
+ # Output only. The time the post was created.
5307
+ # Corresponds to the JSON property `createTime`
5308
+ # @return [String]
5309
+ attr_accessor :create_time
5310
+
5311
+ # Output only. Whether the post is deleted. If `true`, content and author fields
5312
+ # will be empty.
5313
+ # Corresponds to the JSON property `deleted`
5314
+ # @return [Boolean]
5315
+ attr_accessor :deleted
5316
+ alias_method :deleted?, :deleted
5317
+
5318
+ # Output only. Whether the post is from a copied document. This field cannot be
5319
+ # set directly by callers.
5320
+ # Corresponds to the JSON property `fromCopiedDocument`
5321
+ # @return [Boolean]
5322
+ attr_accessor :from_copied_document
5323
+ alias_method :from_copied_document?, :from_copied_document
5324
+
5325
+ # Output only. Whether the post is from a document comparison. This field cannot
5326
+ # be set directly by callers.
5327
+ # Corresponds to the JSON property `fromDocumentComparison`
5328
+ # @return [Boolean]
5329
+ attr_accessor :from_document_comparison
5330
+ alias_method :from_document_comparison?, :from_document_comparison
5331
+
5332
+ # Output only. Whether the post is from an imported document. This field cannot
5333
+ # be set directly by callers.
5334
+ # Corresponds to the JSON property `fromImportedDocument`
5335
+ # @return [Boolean]
5336
+ attr_accessor :from_imported_document
5337
+ alias_method :from_imported_document?, :from_imported_document
5338
+
5339
+ # Output only. The unique ID of the post.
5340
+ # Corresponds to the JSON property `postId`
5341
+ # @return [String]
5342
+ attr_accessor :post_id
5343
+
5344
+ # Output only. The action type for suggestion posts.
5345
+ # Corresponds to the JSON property `suggestionAction`
5346
+ # @return [String]
5347
+ attr_accessor :suggestion_action
5348
+
5349
+ # Output only. The time the post was last updated.
5350
+ # Corresponds to the JSON property `updateTime`
5351
+ # @return [String]
5352
+ attr_accessor :update_time
5353
+
5354
+ def initialize(**args)
5355
+ update!(**args)
5356
+ end
5357
+
5358
+ # Update properties of this object
5359
+ def update!(**args)
5360
+ @assignee_email = args[:assignee_email] if args.key?(:assignee_email)
5361
+ @author = args[:author] if args.key?(:author)
5362
+ @comment_action = args[:comment_action] if args.key?(:comment_action)
5363
+ @content = args[:content] if args.key?(:content)
5364
+ @content_html = args[:content_html] if args.key?(:content_html)
5365
+ @create_time = args[:create_time] if args.key?(:create_time)
5366
+ @deleted = args[:deleted] if args.key?(:deleted)
5367
+ @from_copied_document = args[:from_copied_document] if args.key?(:from_copied_document)
5368
+ @from_document_comparison = args[:from_document_comparison] if args.key?(:from_document_comparison)
5369
+ @from_imported_document = args[:from_imported_document] if args.key?(:from_imported_document)
5370
+ @post_id = args[:post_id] if args.key?(:post_id)
5371
+ @suggestion_action = args[:suggestion_action] if args.key?(:suggestion_action)
5372
+ @update_time = args[:update_time] if args.key?(:update_time)
5373
+ end
5374
+ end
5375
+
5376
+ # Represents a user who authored a comment or suggestion post. [Developer
5377
+ # Preview](https://developers.google.com/workspace/preview).
5378
+ class PostAuthor
5379
+ include Google::Apis::Core::Hashable
5380
+
5381
+ # Whether the user is anonymous.
5382
+ # Corresponds to the JSON property `anonymous`
5383
+ # @return [Boolean]
5384
+ attr_accessor :anonymous
5385
+ alias_method :anonymous?, :anonymous
5386
+
5387
+ # The display name of the user. May be absent if the author is anonymous.
5388
+ # Corresponds to the JSON property `displayName`
5389
+ # @return [String]
5390
+ attr_accessor :display_name
5391
+
5392
+ # Whether the user is the authenticated user making the request.
5393
+ # Corresponds to the JSON property `me`
5394
+ # @return [Boolean]
5395
+ attr_accessor :me
5396
+ alias_method :me?, :me
5397
+
5398
+ # The resource name of the post author user, which can also be used to identify
5399
+ # the user in the [Google People API](https://developers.google.com/people/api/
5400
+ # rest/v1/people). Format: `users/`user``. Will not be populated if the
5401
+ # anonymous field is `true` or if the post is from an imported document.
5402
+ # Corresponds to the JSON property `user`
5403
+ # @return [String]
5404
+ attr_accessor :user
5405
+
5406
+ def initialize(**args)
5407
+ update!(**args)
5408
+ end
5409
+
5410
+ # Update properties of this object
5411
+ def update!(**args)
5412
+ @anonymous = args[:anonymous] if args.key?(:anonymous)
5413
+ @display_name = args[:display_name] if args.key?(:display_name)
5414
+ @me = args[:me] if args.key?(:me)
5415
+ @user = args[:user] if args.key?(:user)
5416
+ end
5417
+ end
5418
+
4510
5419
  # Specifies a contiguous range of text.
4511
5420
  class Range
4512
5421
  include Google::Apis::Core::Hashable
@@ -4554,6 +5463,28 @@ module Google
4554
5463
  end
4555
5464
  end
4556
5465
 
5466
+ # Rejects a suggestion. Returns a 403 forbidden error if the requesting user
5467
+ # does not have edit access to the document and is not the author of the
5468
+ # suggestion. [Developer Preview](https://developers.google.com/workspace/
5469
+ # preview).
5470
+ class RejectSuggestionRequest
5471
+ include Google::Apis::Core::Hashable
5472
+
5473
+ # The ID of the suggestion.
5474
+ # Corresponds to the JSON property `suggestionId`
5475
+ # @return [String]
5476
+ attr_accessor :suggestion_id
5477
+
5478
+ def initialize(**args)
5479
+ update!(**args)
5480
+ end
5481
+
5482
+ # Update properties of this object
5483
+ def update!(**args)
5484
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
5485
+ end
5486
+ end
5487
+
4557
5488
  # Replaces all instances of text matching a criteria with replace text.
4558
5489
  class ReplaceAllTextRequest
4559
5490
  include Google::Apis::Core::Hashable
@@ -4703,12 +5634,30 @@ module Google
4703
5634
  class Request
4704
5635
  include Google::Apis::Core::Hashable
4705
5636
 
5637
+ # Accepts a suggestion. Returns a 403 forbidden error if the requesting user
5638
+ # does not have edit access to the document. [Developer Preview](https://
5639
+ # developers.google.com/workspace/preview).
5640
+ # Corresponds to the JSON property `acceptSuggestion`
5641
+ # @return [Google::Apis::DocsV1::AcceptSuggestionRequest]
5642
+ attr_accessor :accept_suggestion
5643
+
5644
+ # Inserts a reply Post into a CommentThread or SuggestionThread. [Developer
5645
+ # Preview](https://developers.google.com/workspace/preview).
5646
+ # Corresponds to the JSON property `addCommentReply`
5647
+ # @return [Google::Apis::DocsV1::AddCommentReplyRequest]
5648
+ attr_accessor :add_comment_reply
5649
+
4706
5650
  # Adds a document tab. When a tab is added at a given index, all subsequent tabs'
4707
5651
  # indexes are incremented.
4708
5652
  # Corresponds to the JSON property `addDocumentTab`
4709
5653
  # @return [Google::Apis::DocsV1::AddDocumentTabRequest]
4710
5654
  attr_accessor :add_document_tab
4711
5655
 
5656
+ # Creates a new DropdownDefinition in the document.
5657
+ # Corresponds to the JSON property `createDropdownDefinition`
5658
+ # @return [Google::Apis::DocsV1::CreateDropdownDefinitionRequest]
5659
+ attr_accessor :create_dropdown_definition
5660
+
4712
5661
  # Creates a Footer. The new footer is applied to the SectionStyle at the
4713
5662
  # location of the SectionBreak if specified, otherwise it is applied to the
4714
5663
  # DocumentStyle. If a footer of the specified type already exists, a 400 bad
@@ -4748,11 +5697,33 @@ module Google
4748
5697
  # @return [Google::Apis::DocsV1::CreateParagraphBulletsRequest]
4749
5698
  attr_accessor :create_paragraph_bullets
4750
5699
 
5700
+ # Deletes a CommentThread. Returns a 400 bad request error if the requesting
5701
+ # user is not the author of the headPost. [Developer Preview](https://developers.
5702
+ # google.com/workspace/preview).
5703
+ # Corresponds to the JSON property `deleteComment`
5704
+ # @return [Google::Apis::DocsV1::DeleteCommentRequest]
5705
+ attr_accessor :delete_comment
5706
+
5707
+ # Deletes a reply Post from a CommentThread or SuggestionThread. Returns a 400
5708
+ # bad request error if: - The requesting user is not the author of the post. -
5709
+ # The reply post contains an action. - The reply post contains an assignee. [
5710
+ # Developer Preview](https://developers.google.com/workspace/preview).
5711
+ # Corresponds to the JSON property `deleteCommentReply`
5712
+ # @return [Google::Apis::DocsV1::DeleteCommentReplyRequest]
5713
+ attr_accessor :delete_comment_reply
5714
+
4751
5715
  # Deletes content from the document.
4752
5716
  # Corresponds to the JSON property `deleteContentRange`
4753
5717
  # @return [Google::Apis::DocsV1::DeleteContentRangeRequest]
4754
5718
  attr_accessor :delete_content_range
4755
5719
 
5720
+ # Deletes a DropdownDefinition. If the dropdown definition is referenced by any
5721
+ # dropdown instances (chips) in the document, a 400 bad request error is
5722
+ # returned.
5723
+ # Corresponds to the JSON property `deleteDropdownDefinition`
5724
+ # @return [Google::Apis::DocsV1::DeleteDropdownDefinitionRequest]
5725
+ attr_accessor :delete_dropdown_definition
5726
+
4756
5727
  # Deletes a Footer from the document.
4757
5728
  # Corresponds to the JSON property `deleteFooter`
4758
5729
  # @return [Google::Apis::DocsV1::DeleteFooterRequest]
@@ -4780,6 +5751,13 @@ module Google
4780
5751
  # @return [Google::Apis::DocsV1::DeletePositionedObjectRequest]
4781
5752
  attr_accessor :delete_positioned_object
4782
5753
 
5754
+ # Deletes a suggestion. Returns a 403 forbidden error if the requesting user is
5755
+ # not the author of the suggestion. [Developer Preview](https://developers.
5756
+ # google.com/workspace/preview).
5757
+ # Corresponds to the JSON property `deleteSuggestion`
5758
+ # @return [Google::Apis::DocsV1::DeleteSuggestionRequest]
5759
+ attr_accessor :delete_suggestion
5760
+
4783
5761
  # Deletes a tab. If the tab has child tabs, they are deleted as well.
4784
5762
  # Corresponds to the JSON property `deleteTab`
4785
5763
  # @return [Google::Apis::DocsV1::DeleteTabRequest]
@@ -4795,11 +5773,22 @@ module Google
4795
5773
  # @return [Google::Apis::DocsV1::DeleteTableRowRequest]
4796
5774
  attr_accessor :delete_table_row
4797
5775
 
5776
+ # Inserts a CommentThread into the document. [Developer Preview](https://
5777
+ # developers.google.com/workspace/preview).
5778
+ # Corresponds to the JSON property `insertComment`
5779
+ # @return [Google::Apis::DocsV1::InsertCommentRequest]
5780
+ attr_accessor :insert_comment
5781
+
4798
5782
  # Inserts a date at the specified location.
4799
5783
  # Corresponds to the JSON property `insertDate`
4800
5784
  # @return [Google::Apis::DocsV1::InsertDateRequest]
4801
5785
  attr_accessor :insert_date
4802
5786
 
5787
+ # Inserts a Dropdown at the specified location.
5788
+ # Corresponds to the JSON property `insertDropdown`
5789
+ # @return [Google::Apis::DocsV1::InsertDropdownRequest]
5790
+ attr_accessor :insert_dropdown
5791
+
4803
5792
  # Inserts an InlineObject containing an image at the given location.
4804
5793
  # Corresponds to the JSON property `insertInlineImage`
4805
5794
  # @return [Google::Apis::DocsV1::InsertInlineImageRequest]
@@ -4857,6 +5846,14 @@ module Google
4857
5846
  # @return [Google::Apis::DocsV1::PinTableHeaderRowsRequest]
4858
5847
  attr_accessor :pin_table_header_rows
4859
5848
 
5849
+ # Rejects a suggestion. Returns a 403 forbidden error if the requesting user
5850
+ # does not have edit access to the document and is not the author of the
5851
+ # suggestion. [Developer Preview](https://developers.google.com/workspace/
5852
+ # preview).
5853
+ # Corresponds to the JSON property `rejectSuggestion`
5854
+ # @return [Google::Apis::DocsV1::RejectSuggestionRequest]
5855
+ attr_accessor :reject_suggestion
5856
+
4860
5857
  # Replaces all instances of text matching a criteria with replace text.
4861
5858
  # Corresponds to the JSON property `replaceAllText`
4862
5859
  # @return [Google::Apis::DocsV1::ReplaceAllTextRequest]
@@ -4884,6 +5881,14 @@ module Google
4884
5881
  # @return [Google::Apis::DocsV1::UnmergeTableCellsRequest]
4885
5882
  attr_accessor :unmerge_table_cells
4886
5883
 
5884
+ # Updates a Post in a CommentThread or SuggestionThread. Returns a 400 bad
5885
+ # request error if: - The post is the headPost of a SuggestionThread. - The
5886
+ # requesting user is not the author of the post. [Developer Preview](https://
5887
+ # developers.google.com/workspace/preview).
5888
+ # Corresponds to the JSON property `updateCommentPost`
5889
+ # @return [Google::Apis::DocsV1::UpdateCommentPostRequest]
5890
+ attr_accessor :update_comment_post
5891
+
4887
5892
  # Updates the DocumentStyle.
4888
5893
  # Corresponds to the JSON property `updateDocumentStyle`
4889
5894
  # @return [Google::Apis::DocsV1::UpdateDocumentStyleRequest]
@@ -4894,6 +5899,16 @@ module Google
4894
5899
  # @return [Google::Apis::DocsV1::UpdateDocumentTabPropertiesRequest]
4895
5900
  attr_accessor :update_document_tab_properties
4896
5901
 
5902
+ # Updates the properties of a DropdownDefinition.
5903
+ # Corresponds to the JSON property `updateDropdownDefinitionProperties`
5904
+ # @return [Google::Apis::DocsV1::UpdateDropdownDefinitionPropertiesRequest]
5905
+ attr_accessor :update_dropdown_definition_properties
5906
+
5907
+ # Updates the properties of a Dropdown.
5908
+ # Corresponds to the JSON property `updateDropdownProperties`
5909
+ # @return [Google::Apis::DocsV1::UpdateDropdownPropertiesRequest]
5910
+ attr_accessor :update_dropdown_properties
5911
+
4897
5912
  # Updates a named style.
4898
5913
  # Corresponds to the JSON property `updateNamedStyle`
4899
5914
  # @return [Google::Apis::DocsV1::UpdateNamedStyleRequest]
@@ -4935,22 +5950,31 @@ module Google
4935
5950
 
4936
5951
  # Update properties of this object
4937
5952
  def update!(**args)
5953
+ @accept_suggestion = args[:accept_suggestion] if args.key?(:accept_suggestion)
5954
+ @add_comment_reply = args[:add_comment_reply] if args.key?(:add_comment_reply)
4938
5955
  @add_document_tab = args[:add_document_tab] if args.key?(:add_document_tab)
5956
+ @create_dropdown_definition = args[:create_dropdown_definition] if args.key?(:create_dropdown_definition)
4939
5957
  @create_footer = args[:create_footer] if args.key?(:create_footer)
4940
5958
  @create_footnote = args[:create_footnote] if args.key?(:create_footnote)
4941
5959
  @create_header = args[:create_header] if args.key?(:create_header)
4942
5960
  @create_named_range = args[:create_named_range] if args.key?(:create_named_range)
4943
5961
  @create_paragraph_bullets = args[:create_paragraph_bullets] if args.key?(:create_paragraph_bullets)
5962
+ @delete_comment = args[:delete_comment] if args.key?(:delete_comment)
5963
+ @delete_comment_reply = args[:delete_comment_reply] if args.key?(:delete_comment_reply)
4944
5964
  @delete_content_range = args[:delete_content_range] if args.key?(:delete_content_range)
5965
+ @delete_dropdown_definition = args[:delete_dropdown_definition] if args.key?(:delete_dropdown_definition)
4945
5966
  @delete_footer = args[:delete_footer] if args.key?(:delete_footer)
4946
5967
  @delete_header = args[:delete_header] if args.key?(:delete_header)
4947
5968
  @delete_named_range = args[:delete_named_range] if args.key?(:delete_named_range)
4948
5969
  @delete_paragraph_bullets = args[:delete_paragraph_bullets] if args.key?(:delete_paragraph_bullets)
4949
5970
  @delete_positioned_object = args[:delete_positioned_object] if args.key?(:delete_positioned_object)
5971
+ @delete_suggestion = args[:delete_suggestion] if args.key?(:delete_suggestion)
4950
5972
  @delete_tab = args[:delete_tab] if args.key?(:delete_tab)
4951
5973
  @delete_table_column = args[:delete_table_column] if args.key?(:delete_table_column)
4952
5974
  @delete_table_row = args[:delete_table_row] if args.key?(:delete_table_row)
5975
+ @insert_comment = args[:insert_comment] if args.key?(:insert_comment)
4953
5976
  @insert_date = args[:insert_date] if args.key?(:insert_date)
5977
+ @insert_dropdown = args[:insert_dropdown] if args.key?(:insert_dropdown)
4954
5978
  @insert_inline_image = args[:insert_inline_image] if args.key?(:insert_inline_image)
4955
5979
  @insert_page_break = args[:insert_page_break] if args.key?(:insert_page_break)
4956
5980
  @insert_person = args[:insert_person] if args.key?(:insert_person)
@@ -4962,12 +5986,16 @@ module Google
4962
5986
  @insert_text = args[:insert_text] if args.key?(:insert_text)
4963
5987
  @merge_table_cells = args[:merge_table_cells] if args.key?(:merge_table_cells)
4964
5988
  @pin_table_header_rows = args[:pin_table_header_rows] if args.key?(:pin_table_header_rows)
5989
+ @reject_suggestion = args[:reject_suggestion] if args.key?(:reject_suggestion)
4965
5990
  @replace_all_text = args[:replace_all_text] if args.key?(:replace_all_text)
4966
5991
  @replace_image = args[:replace_image] if args.key?(:replace_image)
4967
5992
  @replace_named_range_content = args[:replace_named_range_content] if args.key?(:replace_named_range_content)
4968
5993
  @unmerge_table_cells = args[:unmerge_table_cells] if args.key?(:unmerge_table_cells)
5994
+ @update_comment_post = args[:update_comment_post] if args.key?(:update_comment_post)
4969
5995
  @update_document_style = args[:update_document_style] if args.key?(:update_document_style)
4970
5996
  @update_document_tab_properties = args[:update_document_tab_properties] if args.key?(:update_document_tab_properties)
5997
+ @update_dropdown_definition_properties = args[:update_dropdown_definition_properties] if args.key?(:update_dropdown_definition_properties)
5998
+ @update_dropdown_properties = args[:update_dropdown_properties] if args.key?(:update_dropdown_properties)
4971
5999
  @update_named_style = args[:update_named_style] if args.key?(:update_named_style)
4972
6000
  @update_paragraph_style = args[:update_paragraph_style] if args.key?(:update_paragraph_style)
4973
6001
  @update_section_style = args[:update_section_style] if args.key?(:update_section_style)
@@ -4982,11 +6010,22 @@ module Google
4982
6010
  class Response
4983
6011
  include Google::Apis::Core::Hashable
4984
6012
 
6013
+ # Response message for adding a reply. [Developer Preview](https://developers.
6014
+ # google.com/workspace/preview).
6015
+ # Corresponds to the JSON property `addCommentReply`
6016
+ # @return [Google::Apis::DocsV1::AddCommentReplyResponse]
6017
+ attr_accessor :add_comment_reply
6018
+
4985
6019
  # The result of adding a document tab.
4986
6020
  # Corresponds to the JSON property `addDocumentTab`
4987
6021
  # @return [Google::Apis::DocsV1::AddDocumentTabResponse]
4988
6022
  attr_accessor :add_document_tab
4989
6023
 
6024
+ # Response message for creating a dropdown definition.
6025
+ # Corresponds to the JSON property `createDropdownDefinition`
6026
+ # @return [Google::Apis::DocsV1::CreateDropdownDefinitionResponse]
6027
+ attr_accessor :create_dropdown_definition
6028
+
4990
6029
  # The result of creating a footer.
4991
6030
  # Corresponds to the JSON property `createFooter`
4992
6031
  # @return [Google::Apis::DocsV1::CreateFooterResponse]
@@ -5007,6 +6046,17 @@ module Google
5007
6046
  # @return [Google::Apis::DocsV1::CreateNamedRangeResponse]
5008
6047
  attr_accessor :create_named_range
5009
6048
 
6049
+ # Response message for inserting a comment. [Developer Preview](https://
6050
+ # developers.google.com/workspace/preview).
6051
+ # Corresponds to the JSON property `insertComment`
6052
+ # @return [Google::Apis::DocsV1::InsertCommentResponse]
6053
+ attr_accessor :insert_comment
6054
+
6055
+ # The result of inserting a Dropdown.
6056
+ # Corresponds to the JSON property `insertDropdown`
6057
+ # @return [Google::Apis::DocsV1::InsertDropdownResponse]
6058
+ attr_accessor :insert_dropdown
6059
+
5010
6060
  # The result of inserting an inline image.
5011
6061
  # Corresponds to the JSON property `insertInlineImage`
5012
6062
  # @return [Google::Apis::DocsV1::InsertInlineImageResponse]
@@ -5028,11 +6078,15 @@ module Google
5028
6078
 
5029
6079
  # Update properties of this object
5030
6080
  def update!(**args)
6081
+ @add_comment_reply = args[:add_comment_reply] if args.key?(:add_comment_reply)
5031
6082
  @add_document_tab = args[:add_document_tab] if args.key?(:add_document_tab)
6083
+ @create_dropdown_definition = args[:create_dropdown_definition] if args.key?(:create_dropdown_definition)
5032
6084
  @create_footer = args[:create_footer] if args.key?(:create_footer)
5033
6085
  @create_footnote = args[:create_footnote] if args.key?(:create_footnote)
5034
6086
  @create_header = args[:create_header] if args.key?(:create_header)
5035
6087
  @create_named_range = args[:create_named_range] if args.key?(:create_named_range)
6088
+ @insert_comment = args[:insert_comment] if args.key?(:insert_comment)
6089
+ @insert_dropdown = args[:insert_dropdown] if args.key?(:insert_dropdown)
5036
6090
  @insert_inline_image = args[:insert_inline_image] if args.key?(:insert_inline_image)
5037
6091
  @insert_inline_sheets_chart = args[:insert_inline_sheets_chart] if args.key?(:insert_inline_sheets_chart)
5038
6092
  @replace_all_text = args[:replace_all_text] if args.key?(:replace_all_text)
@@ -5735,6 +6789,60 @@ module Google
5735
6789
  end
5736
6790
  end
5737
6791
 
6792
+ # A suggested change to dropdown definition properties.
6793
+ class SuggestedDropdownDefinitionProperties
6794
+ include Google::Apis::Core::Hashable
6795
+
6796
+ # Properties of a dropdown definition.
6797
+ # Corresponds to the JSON property `dropdownDefinitionProperties`
6798
+ # @return [Google::Apis::DocsV1::DropdownDefinitionProperties]
6799
+ attr_accessor :dropdown_definition_properties
6800
+
6801
+ # A mask that indicates which of the fields on the base
6802
+ # DropdownDefinitionProperties have been changed in this suggestion. For any
6803
+ # field set to true, there's a new suggested value.
6804
+ # Corresponds to the JSON property `dropdownDefinitionPropertiesSuggestionState`
6805
+ # @return [Google::Apis::DocsV1::DropdownDefinitionPropertiesSuggestionState]
6806
+ attr_accessor :dropdown_definition_properties_suggestion_state
6807
+
6808
+ def initialize(**args)
6809
+ update!(**args)
6810
+ end
6811
+
6812
+ # Update properties of this object
6813
+ def update!(**args)
6814
+ @dropdown_definition_properties = args[:dropdown_definition_properties] if args.key?(:dropdown_definition_properties)
6815
+ @dropdown_definition_properties_suggestion_state = args[:dropdown_definition_properties_suggestion_state] if args.key?(:dropdown_definition_properties_suggestion_state)
6816
+ end
6817
+ end
6818
+
6819
+ # A suggested change to dropdown properties.
6820
+ class SuggestedDropdownProperties
6821
+ include Google::Apis::Core::Hashable
6822
+
6823
+ # Properties specific to a dropdown.
6824
+ # Corresponds to the JSON property `dropdownProperties`
6825
+ # @return [Google::Apis::DocsV1::DropdownProperties]
6826
+ attr_accessor :dropdown_properties
6827
+
6828
+ # A mask that indicates which of the fields on the base DropdownProperties have
6829
+ # been changed in this suggestion. For any field set to true, there's a new
6830
+ # suggested value.
6831
+ # Corresponds to the JSON property `dropdownPropertiesSuggestionState`
6832
+ # @return [Google::Apis::DocsV1::DropdownPropertiesSuggestionState]
6833
+ attr_accessor :dropdown_properties_suggestion_state
6834
+
6835
+ def initialize(**args)
6836
+ update!(**args)
6837
+ end
6838
+
6839
+ # Update properties of this object
6840
+ def update!(**args)
6841
+ @dropdown_properties = args[:dropdown_properties] if args.key?(:dropdown_properties)
6842
+ @dropdown_properties_suggestion_state = args[:dropdown_properties_suggestion_state] if args.key?(:dropdown_properties_suggestion_state)
6843
+ end
6844
+ end
6845
+
5738
6846
  # A suggested change to InlineObjectProperties.
5739
6847
  class SuggestedInlineObjectProperties
5740
6848
  include Google::Apis::Core::Hashable
@@ -5971,6 +7079,104 @@ module Google
5971
7079
  end
5972
7080
  end
5973
7081
 
7082
+ # The suggestions which were affected by a given update. [Developer Preview](
7083
+ # https://developers.google.com/workspace/preview).
7084
+ class SuggestionResponse
7085
+ include Google::Apis::Core::Hashable
7086
+
7087
+ # The IDs of suggestions which were accepted during the update.
7088
+ # Corresponds to the JSON property `acceptedSuggestionIds`
7089
+ # @return [Array<String>]
7090
+ attr_accessor :accepted_suggestion_ids
7091
+
7092
+ # The IDs of suggestions which were created during the update.
7093
+ # Corresponds to the JSON property `createdSuggestionIds`
7094
+ # @return [Array<String>]
7095
+ attr_accessor :created_suggestion_ids
7096
+
7097
+ # The IDs of suggestions which were deleted during the update.
7098
+ # Corresponds to the JSON property `deletedSuggestionIds`
7099
+ # @return [Array<String>]
7100
+ attr_accessor :deleted_suggestion_ids
7101
+
7102
+ # The IDs of suggestions which were rejected during the update.
7103
+ # Corresponds to the JSON property `rejectedSuggestionIds`
7104
+ # @return [Array<String>]
7105
+ attr_accessor :rejected_suggestion_ids
7106
+
7107
+ # The IDs of suggestions whose summaries were updated during the update.
7108
+ # Corresponds to the JSON property `updatedSummarySuggestionIds`
7109
+ # @return [Array<String>]
7110
+ attr_accessor :updated_summary_suggestion_ids
7111
+
7112
+ def initialize(**args)
7113
+ update!(**args)
7114
+ end
7115
+
7116
+ # Update properties of this object
7117
+ def update!(**args)
7118
+ @accepted_suggestion_ids = args[:accepted_suggestion_ids] if args.key?(:accepted_suggestion_ids)
7119
+ @created_suggestion_ids = args[:created_suggestion_ids] if args.key?(:created_suggestion_ids)
7120
+ @deleted_suggestion_ids = args[:deleted_suggestion_ids] if args.key?(:deleted_suggestion_ids)
7121
+ @rejected_suggestion_ids = args[:rejected_suggestion_ids] if args.key?(:rejected_suggestion_ids)
7122
+ @updated_summary_suggestion_ids = args[:updated_summary_suggestion_ids] if args.key?(:updated_summary_suggestion_ids)
7123
+ end
7124
+ end
7125
+
7126
+ # Represents a single suggestion thread. Suggestion threads are created as a
7127
+ # byproduct of saving changes to the document while in suggestion mode, and
7128
+ # cannot be created directly. [Developer Preview](https://developers.google.com/
7129
+ # workspace/preview).
7130
+ class SuggestionThread
7131
+ include Google::Apis::Core::Hashable
7132
+
7133
+ # Represents a single post in a comment or suggestion thread. [Developer Preview]
7134
+ # (https://developers.google.com/workspace/preview).
7135
+ # Corresponds to the JSON property `headPost`
7136
+ # @return [Google::Apis::DocsV1::Post]
7137
+ attr_accessor :head_post
7138
+
7139
+ # Replies to the head post.
7140
+ # Corresponds to the JSON property `replies`
7141
+ # @return [Array<Google::Apis::DocsV1::Post>]
7142
+ attr_accessor :replies
7143
+
7144
+ # Whether the thread is open, accepted, or rejected.
7145
+ # Corresponds to the JSON property `status`
7146
+ # @return [String]
7147
+ attr_accessor :status
7148
+
7149
+ # The unique ID of the suggestion.
7150
+ # Corresponds to the JSON property `suggestionId`
7151
+ # @return [String]
7152
+ attr_accessor :suggestion_id
7153
+
7154
+ # Summary of the suggested differences in the document, in HTML. May be empty.
7155
+ # Corresponds to the JSON property `summaryHtml`
7156
+ # @return [String]
7157
+ attr_accessor :summary_html
7158
+
7159
+ # Summary of the suggested differences in the document, in plain text. May be
7160
+ # empty.
7161
+ # Corresponds to the JSON property `summaryText`
7162
+ # @return [String]
7163
+ attr_accessor :summary_text
7164
+
7165
+ def initialize(**args)
7166
+ update!(**args)
7167
+ end
7168
+
7169
+ # Update properties of this object
7170
+ def update!(**args)
7171
+ @head_post = args[:head_post] if args.key?(:head_post)
7172
+ @replies = args[:replies] if args.key?(:replies)
7173
+ @status = args[:status] if args.key?(:status)
7174
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
7175
+ @summary_html = args[:summary_html] if args.key?(:summary_html)
7176
+ @summary_text = args[:summary_text] if args.key?(:summary_text)
7177
+ end
7178
+ end
7179
+
5974
7180
  # A tab in a document.
5975
7181
  class Tab
5976
7182
  include Google::Apis::Core::Hashable
@@ -6963,6 +8169,49 @@ module Google
6963
8169
  end
6964
8170
  end
6965
8171
 
8172
+ # Updates a Post in a CommentThread or SuggestionThread. Returns a 400 bad
8173
+ # request error if: - The post is the headPost of a SuggestionThread. - The
8174
+ # requesting user is not the author of the post. [Developer Preview](https://
8175
+ # developers.google.com/workspace/preview).
8176
+ class UpdateCommentPostRequest
8177
+ include Google::Apis::Core::Hashable
8178
+
8179
+ # The ID of the CommentThread which the post belongs to.
8180
+ # Corresponds to the JSON property `commentId`
8181
+ # @return [String]
8182
+ attr_accessor :comment_id
8183
+
8184
+ # The new text of the comment, as plain text. This text content will be handled
8185
+ # similarly to comments created in the Docs editor. It will have similar
8186
+ # behaviors for formatting, notifications, etc. This field cannot be empty, and
8187
+ # must not exceed 2048 UTF-8 code units.
8188
+ # Corresponds to the JSON property `content`
8189
+ # @return [String]
8190
+ attr_accessor :content
8191
+
8192
+ # The ID of the post being updated.
8193
+ # Corresponds to the JSON property `postId`
8194
+ # @return [String]
8195
+ attr_accessor :post_id
8196
+
8197
+ # The ID of the SuggestionThread which the post belongs to.
8198
+ # Corresponds to the JSON property `suggestionId`
8199
+ # @return [String]
8200
+ attr_accessor :suggestion_id
8201
+
8202
+ def initialize(**args)
8203
+ update!(**args)
8204
+ end
8205
+
8206
+ # Update properties of this object
8207
+ def update!(**args)
8208
+ @comment_id = args[:comment_id] if args.key?(:comment_id)
8209
+ @content = args[:content] if args.key?(:content)
8210
+ @post_id = args[:post_id] if args.key?(:post_id)
8211
+ @suggestion_id = args[:suggestion_id] if args.key?(:suggestion_id)
8212
+ end
8213
+ end
8214
+
6966
8215
  # Updates the DocumentStyle.
6967
8216
  class UpdateDocumentStyleRequest
6968
8217
  include Google::Apis::Core::Hashable
@@ -7029,6 +8278,112 @@ module Google
7029
8278
  end
7030
8279
  end
7031
8280
 
8281
+ # Updates the properties of a DropdownDefinition.
8282
+ class UpdateDropdownDefinitionPropertiesRequest
8283
+ include Google::Apis::Core::Hashable
8284
+
8285
+ # The ID of the DropdownDefinition to update.
8286
+ # Corresponds to the JSON property `dropdownDefinitionId`
8287
+ # @return [String]
8288
+ attr_accessor :dropdown_definition_id
8289
+
8290
+ # Properties of a dropdown definition.
8291
+ # Corresponds to the JSON property `dropdownDefinitionProperties`
8292
+ # @return [Google::Apis::DocsV1::DropdownDefinitionProperties]
8293
+ attr_accessor :dropdown_definition_properties
8294
+
8295
+ # The fields that should be updated. At least one field must be specified. The
8296
+ # root `dropdown_definition_properties` is implied and should not be specified.
8297
+ # A single `"*"` can be used as short-hand for listing every field. When `
8298
+ # dropdown_definition_properties.options` is included in the field mask, the
8299
+ # full, complete list of desired options must be provided in `
8300
+ # dropdown_definition_properties.options`.
8301
+ # Corresponds to the JSON property `fields`
8302
+ # @return [String]
8303
+ attr_accessor :fields
8304
+
8305
+ # A map of option IDs to their replacements, used to automatically reassign
8306
+ # orphaned Dropdown chips when an option is deleted. The keys are the IDs of the
8307
+ # options being deleted, and the values are the IDs of their replacement options.
8308
+ # If an option being deleted is selected in one or more Dropdown chips in the
8309
+ # document, a replacement entry for that option must be provided in this map,
8310
+ # and the replacement option ID must exist in the updated DropdownDefinition. If
8311
+ # a replacement is required but not provided, a 400 bad request error is
8312
+ # returned. Options being deleted that are not selected in any Dropdown chips do
8313
+ # not require a replacement. For example, if option A is being replaced by
8314
+ # option B, the map should be ``"A": "B"``.
8315
+ # Corresponds to the JSON property `selectedOptionIdReplacements`
8316
+ # @return [Hash<String,String>]
8317
+ attr_accessor :selected_option_id_replacements
8318
+
8319
+ # The ID of the tab that contains the dropdown definition to update. When
8320
+ # omitted, the request is applied to the first tab. In a document containing a
8321
+ # single tab: - If provided, must match the singular tab's ID. - If omitted, the
8322
+ # request applies to the singular tab. In a document containing multiple tabs: -
8323
+ # If provided, the request applies to the specified tab. - If omitted, the
8324
+ # request applies to the first tab in the document.
8325
+ # Corresponds to the JSON property `tabId`
8326
+ # @return [String]
8327
+ attr_accessor :tab_id
8328
+
8329
+ def initialize(**args)
8330
+ update!(**args)
8331
+ end
8332
+
8333
+ # Update properties of this object
8334
+ def update!(**args)
8335
+ @dropdown_definition_id = args[:dropdown_definition_id] if args.key?(:dropdown_definition_id)
8336
+ @dropdown_definition_properties = args[:dropdown_definition_properties] if args.key?(:dropdown_definition_properties)
8337
+ @fields = args[:fields] if args.key?(:fields)
8338
+ @selected_option_id_replacements = args[:selected_option_id_replacements] if args.key?(:selected_option_id_replacements)
8339
+ @tab_id = args[:tab_id] if args.key?(:tab_id)
8340
+ end
8341
+ end
8342
+
8343
+ # Updates the properties of a Dropdown.
8344
+ class UpdateDropdownPropertiesRequest
8345
+ include Google::Apis::Core::Hashable
8346
+
8347
+ # Required. The Dropdown ID.
8348
+ # Corresponds to the JSON property `dropdownId`
8349
+ # @return [String]
8350
+ attr_accessor :dropdown_id
8351
+
8352
+ # Properties specific to a dropdown.
8353
+ # Corresponds to the JSON property `dropdownProperties`
8354
+ # @return [Google::Apis::DocsV1::DropdownProperties]
8355
+ attr_accessor :dropdown_properties
8356
+
8357
+ # The fields that should be updated. At least one field must be specified. The
8358
+ # root `dropdown_properties` is implied and should not be specified. A single `"*
8359
+ # "` can be used as short-hand for listing every field.
8360
+ # Corresponds to the JSON property `fields`
8361
+ # @return [String]
8362
+ attr_accessor :fields
8363
+
8364
+ # The ID of the tab that contains the dropdown to update. When omitted, the
8365
+ # request is applied to the first tab. In a document containing a single tab: -
8366
+ # If provided, must match the singular tab's ID. - If omitted, the request
8367
+ # applies to the singular tab. In a document containing multiple tabs: - If
8368
+ # provided, the request applies to the specified tab. - If omitted, the request
8369
+ # applies to the first tab in the document.
8370
+ # Corresponds to the JSON property `tabId`
8371
+ # @return [String]
8372
+ attr_accessor :tab_id
8373
+
8374
+ def initialize(**args)
8375
+ update!(**args)
8376
+ end
8377
+
8378
+ # Update properties of this object
8379
+ def update!(**args)
8380
+ @dropdown_id = args[:dropdown_id] if args.key?(:dropdown_id)
8381
+ @dropdown_properties = args[:dropdown_properties] if args.key?(:dropdown_properties)
8382
+ @fields = args[:fields] if args.key?(:fields)
8383
+ @tab_id = args[:tab_id] if args.key?(:tab_id)
8384
+ end
8385
+ end
8386
+
7032
8387
  # Updates a named style.
7033
8388
  class UpdateNamedStyleRequest
7034
8389
  include Google::Apis::Core::Hashable
@@ -7395,6 +8750,13 @@ module Google
7395
8750
  # @return [String]
7396
8751
  attr_accessor :target_revision_id
7397
8752
 
8753
+ # How the request updates should be applied to the document. If unspecified, the
8754
+ # request updates will be applied as normal edits. [Developer Preview](https://
8755
+ # developers.google.com/workspace/preview).
8756
+ # Corresponds to the JSON property `writeMode`
8757
+ # @return [String]
8758
+ attr_accessor :write_mode
8759
+
7398
8760
  def initialize(**args)
7399
8761
  update!(**args)
7400
8762
  end
@@ -7403,6 +8765,7 @@ module Google
7403
8765
  def update!(**args)
7404
8766
  @required_revision_id = args[:required_revision_id] if args.key?(:required_revision_id)
7405
8767
  @target_revision_id = args[:target_revision_id] if args.key?(:target_revision_id)
8768
+ @write_mode = args[:write_mode] if args.key?(:write_mode)
7406
8769
  end
7407
8770
  end
7408
8771
  end