phrase 4.22.0 → 4.23.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 (204) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +8 -6
  4. data/docs/AccountDetails.md +1 -1
  5. data/docs/AuthorizationsApi.md +1 -1
  6. data/docs/Automation.md +6 -0
  7. data/docs/AutomationsApi.md +1 -1
  8. data/docs/AutomationsCreateParameters.md +5 -1
  9. data/docs/AutomationsCreateParameters1.md +5 -1
  10. data/docs/BlacklistedKeysApi.md +1 -1
  11. data/docs/Branch.md +2 -0
  12. data/docs/BranchCreateParameters.md +3 -1
  13. data/docs/BranchMergeParameters.md +1 -1
  14. data/docs/BranchSyncParameters.md +1 -1
  15. data/docs/BranchesApi.md +10 -10
  16. data/docs/CommentsApi.md +7 -7
  17. data/docs/Distribution.md +4 -4
  18. data/docs/{DistributionPreview.md → DistributionDetails.md} +9 -3
  19. data/docs/DistributionsApi.md +9 -9
  20. data/docs/DocumentDelete422Response.md +19 -0
  21. data/docs/{CustomMetadataPropertyCreate422ResponseErrorsInner.md → DocumentDelete422ResponseErrorsInner.md} +2 -2
  22. data/docs/DocumentsApi.md +4 -2
  23. data/docs/FigmaAttachmentsApi.md +1 -1
  24. data/docs/GlossariesApi.md +1 -1
  25. data/docs/Glossary.md +2 -0
  26. data/docs/GlossaryTerm.md +2 -0
  27. data/docs/GlossaryTermGlossary.md +19 -0
  28. data/docs/GlossaryTermTranslationsApi.md +1 -1
  29. data/docs/GlossaryTermsApi.md +1 -1
  30. data/docs/IcuSkeletonParameters.md +3 -1
  31. data/docs/Invitation.md +2 -2
  32. data/docs/InvitationsApi.md +1 -1
  33. data/docs/Job.md +5 -1
  34. data/docs/JobDetails.md +8 -2
  35. data/docs/JobTemplate.md +2 -0
  36. data/docs/JobTemplateDetails.md +2 -0
  37. data/docs/JobTemplatesApi.md +1 -1
  38. data/docs/JobsApi.md +15 -9
  39. data/docs/KeyCreateParameters.md +6 -2
  40. data/docs/KeyUpdateParameters.md +6 -2
  41. data/docs/KeysApi.md +1 -1
  42. data/docs/LocalesApi.md +6 -2
  43. data/docs/MembersApi.md +1 -1
  44. data/docs/NotificationsApi.md +3 -1
  45. data/docs/OrdersApi.md +4 -2
  46. data/docs/OrganizationJobTemplate.md +4 -0
  47. data/docs/OrganizationJobTemplateDetails.md +4 -0
  48. data/docs/OrganizationJobTemplatesApi.md +1 -1
  49. data/docs/ProjectCreateParameters.md +17 -1
  50. data/docs/ProjectDetails.md +7 -1
  51. data/docs/ProjectUpdateParameters.md +17 -3
  52. data/docs/ProjectsApi.md +10 -8
  53. data/docs/Release.md +2 -0
  54. data/docs/ReleasesApi.md +1 -1
  55. data/docs/RepoSync.md +2 -0
  56. data/docs/ScreenshotMarker.md +2 -2
  57. data/docs/ScreenshotMarkerPresentation.md +23 -0
  58. data/docs/ScreenshotMarkersApi.md +1 -1
  59. data/docs/ScreenshotUpdateParameters.md +1 -1
  60. data/docs/ScreenshotsApi.md +1 -1
  61. data/docs/SearchInAccountParameters.md +3 -1
  62. data/docs/StyleGuidesApi.md +1 -1
  63. data/docs/StyleguideCreateParameters.md +3 -3
  64. data/docs/StyleguideUpdateParameters.md +3 -3
  65. data/docs/Tag.md +2 -0
  66. data/docs/TagWithStats.md +2 -0
  67. data/docs/TagsApi.md +5 -3
  68. data/docs/TranslationCreateParameters.md +5 -1
  69. data/docs/TranslationOrder.md +2 -2
  70. data/docs/TranslationUpdateParameters.md +3 -1
  71. data/docs/TranslationsApi.md +4 -0
  72. data/docs/UploadBatch.md +4 -2
  73. data/docs/UploadsApi.md +3 -1
  74. data/docs/VariablesApi.md +1 -1
  75. data/docs/WebhooksApi.md +7 -6
  76. data/lib/phrase/api/authorizations_api.rb +2 -0
  77. data/lib/phrase/api/automations_api.rb +2 -0
  78. data/lib/phrase/api/blacklisted_keys_api.rb +2 -0
  79. data/lib/phrase/api/branches_api.rb +20 -14
  80. data/lib/phrase/api/comments_api.rb +18 -4
  81. data/lib/phrase/api/distributions_api.rb +14 -12
  82. data/lib/phrase/api/documents_api.rb +5 -0
  83. data/lib/phrase/api/figma_attachments_api.rb +2 -0
  84. data/lib/phrase/api/glossaries_api.rb +2 -0
  85. data/lib/phrase/api/glossary_term_translations_api.rb +2 -0
  86. data/lib/phrase/api/glossary_terms_api.rb +2 -0
  87. data/lib/phrase/api/invitations_api.rb +2 -0
  88. data/lib/phrase/api/job_templates_api.rb +2 -0
  89. data/lib/phrase/api/jobs_api.rb +18 -6
  90. data/lib/phrase/api/keys_api.rb +2 -0
  91. data/lib/phrase/api/locales_api.rb +8 -0
  92. data/lib/phrase/api/members_api.rb +2 -0
  93. data/lib/phrase/api/notifications_api.rb +3 -0
  94. data/lib/phrase/api/orders_api.rb +5 -0
  95. data/lib/phrase/api/organization_job_templates_api.rb +2 -0
  96. data/lib/phrase/api/projects_api.rb +23 -10
  97. data/lib/phrase/api/releases_api.rb +2 -0
  98. data/lib/phrase/api/screenshot_markers_api.rb +2 -0
  99. data/lib/phrase/api/screenshots_api.rb +2 -0
  100. data/lib/phrase/api/style_guides_api.rb +2 -0
  101. data/lib/phrase/api/tags_api.rb +7 -2
  102. data/lib/phrase/api/translations_api.rb +6 -0
  103. data/lib/phrase/api/uploads_api.rb +3 -0
  104. data/lib/phrase/api/variables_api.rb +2 -0
  105. data/lib/phrase/api/webhooks_api.rb +9 -5
  106. data/lib/phrase/models/account_details.rb +1 -0
  107. data/lib/phrase/models/authorization_create_parameters.rb +22 -0
  108. data/lib/phrase/models/authorization_update_parameters.rb +22 -0
  109. data/lib/phrase/models/automation.rb +34 -1
  110. data/lib/phrase/models/automations_create_parameters.rb +24 -4
  111. data/lib/phrase/models/automations_create_parameters1.rb +24 -4
  112. data/lib/phrase/models/branch.rb +46 -1
  113. data/lib/phrase/models/branch_create_parameters.rb +14 -4
  114. data/lib/phrase/models/branch_merge_parameters.rb +35 -1
  115. data/lib/phrase/models/branch_sync_parameters.rb +35 -1
  116. data/lib/phrase/models/distribution.rb +17 -20
  117. data/lib/phrase/models/{distribution_preview.rb → distribution_details.rb} +46 -7
  118. data/lib/phrase/models/{custom_metadata_property_create422_response.rb → document_delete422_response.rb} +4 -4
  119. data/lib/phrase/models/{custom_metadata_property_create422_response_errors_inner.rb → document_delete422_response_errors_inner.rb} +3 -3
  120. data/lib/phrase/models/glossary.rb +12 -1
  121. data/lib/phrase/models/glossary_term.rb +10 -1
  122. data/lib/phrase/models/glossary_term_glossary.rb +206 -0
  123. data/lib/phrase/models/icu_skeleton_parameters.rb +12 -2
  124. data/lib/phrase/models/invitation.rb +9 -8
  125. data/lib/phrase/models/job.rb +26 -4
  126. data/lib/phrase/models/job_details.rb +37 -4
  127. data/lib/phrase/models/job_template.rb +11 -1
  128. data/lib/phrase/models/job_template_details.rb +11 -1
  129. data/lib/phrase/models/key_create_parameters.rb +26 -4
  130. data/lib/phrase/models/key_update_parameters.rb +26 -4
  131. data/lib/phrase/models/organization_job_template.rb +22 -1
  132. data/lib/phrase/models/organization_job_template_details.rb +22 -1
  133. data/lib/phrase/models/project_create_parameters.rb +115 -1
  134. data/lib/phrase/models/project_details.rb +31 -4
  135. data/lib/phrase/models/project_update_parameters.rb +75 -5
  136. data/lib/phrase/models/release.rb +10 -1
  137. data/lib/phrase/models/repo_sync.rb +12 -1
  138. data/lib/phrase/models/screenshot_marker.rb +2 -1
  139. data/lib/phrase/models/screenshot_marker_presentation.rb +224 -0
  140. data/lib/phrase/models/search_in_account_parameters.rb +16 -4
  141. data/lib/phrase/models/styleguide_create_parameters.rb +61 -3
  142. data/lib/phrase/models/styleguide_update_parameters.rb +61 -3
  143. data/lib/phrase/models/tag.rb +11 -1
  144. data/lib/phrase/models/tag_with_stats.rb +11 -1
  145. data/lib/phrase/models/translation_create_parameters.rb +24 -4
  146. data/lib/phrase/models/translation_order.rb +8 -7
  147. data/lib/phrase/models/translation_update_parameters.rb +14 -4
  148. data/lib/phrase/models/upload_batch.rb +24 -14
  149. data/lib/phrase/version.rb +1 -1
  150. data/lib/phrase.rb +5 -3
  151. data/spec/api/branches_api_spec.rb +7 -7
  152. data/spec/api/comments_api_spec.rb +2 -2
  153. data/spec/api/distributions_api_spec.rb +4 -4
  154. data/spec/api/documents_api_spec.rb +1 -0
  155. data/spec/api/jobs_api_spec.rb +4 -2
  156. data/spec/api/notifications_api_spec.rb +1 -0
  157. data/spec/api/orders_api_spec.rb +1 -0
  158. data/spec/api/projects_api_spec.rb +6 -5
  159. data/spec/api/tags_api_spec.rb +2 -1
  160. data/spec/api/translations_api_spec.rb +2 -0
  161. data/spec/api/webhooks_api_spec.rb +2 -2
  162. data/spec/models/authorization_create_parameters_spec.rb +4 -0
  163. data/spec/models/authorization_update_parameters_spec.rb +4 -0
  164. data/spec/models/automation_spec.rb +18 -0
  165. data/spec/models/automations_create_parameters1_spec.rb +12 -0
  166. data/spec/models/automations_create_parameters_spec.rb +12 -0
  167. data/spec/models/branch_create_parameters_spec.rb +6 -0
  168. data/spec/models/branch_merge_parameters_spec.rb +4 -0
  169. data/spec/models/branch_spec.rb +10 -0
  170. data/spec/models/branch_sync_parameters_spec.rb +4 -0
  171. data/spec/models/{distribution_preview_spec.rb → distribution_details_spec.rb} +24 -6
  172. data/spec/models/distribution_spec.rb +3 -3
  173. data/spec/models/{custom_metadata_property_create422_response_errors_inner_spec.rb → document_delete422_response_errors_inner_spec.rb} +6 -6
  174. data/spec/models/{custom_metadata_property_create422_response_spec.rb → document_delete422_response_spec.rb} +6 -6
  175. data/spec/models/glossary_spec.rb +6 -0
  176. data/spec/models/glossary_term_glossary_spec.rb +35 -0
  177. data/spec/models/glossary_term_spec.rb +6 -0
  178. data/spec/models/icu_skeleton_parameters_spec.rb +6 -0
  179. data/spec/models/invitation_spec.rb +1 -1
  180. data/spec/models/job_details_spec.rb +18 -0
  181. data/spec/models/job_spec.rb +12 -0
  182. data/spec/models/job_template_details_spec.rb +6 -0
  183. data/spec/models/job_template_spec.rb +6 -0
  184. data/spec/models/key_create_parameters_spec.rb +12 -0
  185. data/spec/models/key_update_parameters_spec.rb +12 -0
  186. data/spec/models/organization_job_template_details_spec.rb +12 -0
  187. data/spec/models/organization_job_template_spec.rb +12 -0
  188. data/spec/models/project_create_parameters_spec.rb +52 -0
  189. data/spec/models/project_details_spec.rb +18 -0
  190. data/spec/models/project_update_parameters_spec.rb +42 -0
  191. data/spec/models/release_spec.rb +6 -0
  192. data/spec/models/repo_sync_spec.rb +6 -0
  193. data/spec/models/screenshot_marker_presentation_spec.rb +47 -0
  194. data/spec/models/search_in_account_parameters_spec.rb +6 -0
  195. data/spec/models/styleguide_create_parameters_spec.rb +12 -0
  196. data/spec/models/styleguide_update_parameters_spec.rb +12 -0
  197. data/spec/models/tag_spec.rb +6 -0
  198. data/spec/models/tag_with_stats_spec.rb +6 -0
  199. data/spec/models/translation_create_parameters_spec.rb +12 -0
  200. data/spec/models/translation_order_spec.rb +1 -1
  201. data/spec/models/translation_update_parameters_spec.rb +6 -0
  202. data/spec/models/upload_batch_spec.rb +8 -2
  203. metadata +267 -259
  204. data/docs/CustomMetadataPropertyCreate422Response.md +0 -19
@@ -53,6 +53,12 @@ module Phrase
53
53
  # Updates/Creates custom metadata property name and value pairs to be associated with key. If you want to delete a custom metadata property, you can set its value to null. If you want to update a custom metadata property, you can set its value to the new value.
54
54
  attr_accessor :custom_metadata
55
55
 
56
+ # Locales for which translations of this key are excluded from exports. Pass an empty array to clear exclusions.
57
+ attr_accessor :excluded_in_locales
58
+
59
+ # Override of the value type for the key in the export. Most useful for formats like Android XML that distinguish string vs. plural resources.
60
+ attr_accessor :format_value_type
61
+
56
62
  # Attribute mapping from ruby-style variable name to JSON key.
57
63
  def self.attribute_map
58
64
  {
@@ -72,7 +78,9 @@ module Phrase
72
78
  :'original_file' => :'original_file',
73
79
  :'localized_format_string' => :'localized_format_string',
74
80
  :'localized_format_key' => :'localized_format_key',
75
- :'custom_metadata' => :'custom_metadata'
81
+ :'custom_metadata' => :'custom_metadata',
82
+ :'excluded_in_locales' => :'excluded_in_locales',
83
+ :'format_value_type' => :'format_value_type'
76
84
  }
77
85
  end
78
86
 
@@ -95,7 +103,9 @@ module Phrase
95
103
  :'original_file' => :'String',
96
104
  :'localized_format_string' => :'String',
97
105
  :'localized_format_key' => :'String',
98
- :'custom_metadata' => :'Object'
106
+ :'custom_metadata' => :'Object',
107
+ :'excluded_in_locales' => :'Array<String>',
108
+ :'format_value_type' => :'String'
99
109
  }
100
110
  end
101
111
 
@@ -187,6 +197,16 @@ module Phrase
187
197
  if attributes.key?(:'custom_metadata')
188
198
  self.custom_metadata = attributes[:'custom_metadata']
189
199
  end
200
+
201
+ if attributes.key?(:'excluded_in_locales')
202
+ if (value = attributes[:'excluded_in_locales']).is_a?(Array)
203
+ self.excluded_in_locales = value
204
+ end
205
+ end
206
+
207
+ if attributes.key?(:'format_value_type')
208
+ self.format_value_type = attributes[:'format_value_type']
209
+ end
190
210
  end
191
211
 
192
212
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -223,7 +243,9 @@ module Phrase
223
243
  original_file == o.original_file &&
224
244
  localized_format_string == o.localized_format_string &&
225
245
  localized_format_key == o.localized_format_key &&
226
- custom_metadata == o.custom_metadata
246
+ custom_metadata == o.custom_metadata &&
247
+ excluded_in_locales == o.excluded_in_locales &&
248
+ format_value_type == o.format_value_type
227
249
  end
228
250
 
229
251
  # @see the `==` method
@@ -235,7 +257,7 @@ module Phrase
235
257
  # Calculates hash code according to all attributes.
236
258
  # @return [Integer] Hash code
237
259
  def hash
238
- [branch, name, description, plural, use_ordinal_rules, name_plural, data_type, tags, max_characters_allowed, screenshot, remove_screenshot, unformatted, xml_space_preserve, original_file, localized_format_string, localized_format_key, custom_metadata].hash
260
+ [branch, name, description, plural, use_ordinal_rules, name_plural, data_type, tags, max_characters_allowed, screenshot, remove_screenshot, unformatted, xml_space_preserve, original_file, localized_format_string, localized_format_key, custom_metadata, excluded_in_locales, format_value_type].hash
239
261
  end
240
262
 
241
263
  # Builds the object from hash
@@ -8,6 +8,12 @@ module Phrase
8
8
 
9
9
  attr_accessor :briefing
10
10
 
11
+ # When `true`, jobs created from this template are auto-translated on creation. Maps to the `autotranslate` field on the request body.
12
+ attr_accessor :autotranslate_enabled
13
+
14
+ # Optional. ID of the source locale used by jobs created from this template. When omitted, the project's default source locale is used.
15
+ attr_accessor :source_locale_id
16
+
11
17
  attr_accessor :created_at
12
18
 
13
19
  attr_accessor :updated_at
@@ -18,6 +24,8 @@ module Phrase
18
24
  :'id' => :'id',
19
25
  :'name' => :'name',
20
26
  :'briefing' => :'briefing',
27
+ :'autotranslate_enabled' => :'autotranslate_enabled',
28
+ :'source_locale_id' => :'source_locale_id',
21
29
  :'created_at' => :'created_at',
22
30
  :'updated_at' => :'updated_at'
23
31
  }
@@ -29,6 +37,8 @@ module Phrase
29
37
  :'id' => :'String',
30
38
  :'name' => :'String',
31
39
  :'briefing' => :'String',
40
+ :'autotranslate_enabled' => :'Boolean',
41
+ :'source_locale_id' => :'String',
32
42
  :'created_at' => :'DateTime',
33
43
  :'updated_at' => :'DateTime'
34
44
  }
@@ -37,6 +47,7 @@ module Phrase
37
47
  # List of attributes with nullable: true
38
48
  def self.openapi_nullable
39
49
  Set.new([
50
+ :'source_locale_id',
40
51
  ])
41
52
  end
42
53
 
@@ -67,6 +78,14 @@ module Phrase
67
78
  self.briefing = attributes[:'briefing']
68
79
  end
69
80
 
81
+ if attributes.key?(:'autotranslate_enabled')
82
+ self.autotranslate_enabled = attributes[:'autotranslate_enabled']
83
+ end
84
+
85
+ if attributes.key?(:'source_locale_id')
86
+ self.source_locale_id = attributes[:'source_locale_id']
87
+ end
88
+
70
89
  if attributes.key?(:'created_at')
71
90
  self.created_at = attributes[:'created_at']
72
91
  end
@@ -97,6 +116,8 @@ module Phrase
97
116
  id == o.id &&
98
117
  name == o.name &&
99
118
  briefing == o.briefing &&
119
+ autotranslate_enabled == o.autotranslate_enabled &&
120
+ source_locale_id == o.source_locale_id &&
100
121
  created_at == o.created_at &&
101
122
  updated_at == o.updated_at
102
123
  end
@@ -110,7 +131,7 @@ module Phrase
110
131
  # Calculates hash code according to all attributes.
111
132
  # @return [Integer] Hash code
112
133
  def hash
113
- [id, name, briefing, created_at, updated_at].hash
134
+ [id, name, briefing, autotranslate_enabled, source_locale_id, created_at, updated_at].hash
114
135
  end
115
136
 
116
137
  # Builds the object from hash
@@ -8,6 +8,12 @@ module Phrase
8
8
 
9
9
  attr_accessor :briefing
10
10
 
11
+ # When `true`, jobs created from this template are auto-translated on creation. Maps to the `autotranslate` field on the request body.
12
+ attr_accessor :autotranslate_enabled
13
+
14
+ # Optional. ID of the source locale used by jobs created from this template. When omitted, the project's default source locale is used.
15
+ attr_accessor :source_locale_id
16
+
11
17
  attr_accessor :created_at
12
18
 
13
19
  attr_accessor :updated_at
@@ -24,6 +30,8 @@ module Phrase
24
30
  :'id' => :'id',
25
31
  :'name' => :'name',
26
32
  :'briefing' => :'briefing',
33
+ :'autotranslate_enabled' => :'autotranslate_enabled',
34
+ :'source_locale_id' => :'source_locale_id',
27
35
  :'created_at' => :'created_at',
28
36
  :'updated_at' => :'updated_at',
29
37
  :'owner' => :'owner',
@@ -38,6 +46,8 @@ module Phrase
38
46
  :'id' => :'String',
39
47
  :'name' => :'String',
40
48
  :'briefing' => :'String',
49
+ :'autotranslate_enabled' => :'Boolean',
50
+ :'source_locale_id' => :'String',
41
51
  :'created_at' => :'DateTime',
42
52
  :'updated_at' => :'DateTime',
43
53
  :'owner' => :'UserPreview',
@@ -49,6 +59,7 @@ module Phrase
49
59
  # List of attributes with nullable: true
50
60
  def self.openapi_nullable
51
61
  Set.new([
62
+ :'source_locale_id',
52
63
  ])
53
64
  end
54
65
 
@@ -86,6 +97,14 @@ module Phrase
86
97
  self.briefing = attributes[:'briefing']
87
98
  end
88
99
 
100
+ if attributes.key?(:'autotranslate_enabled')
101
+ self.autotranslate_enabled = attributes[:'autotranslate_enabled']
102
+ end
103
+
104
+ if attributes.key?(:'source_locale_id')
105
+ self.source_locale_id = attributes[:'source_locale_id']
106
+ end
107
+
89
108
  if attributes.key?(:'created_at')
90
109
  self.created_at = attributes[:'created_at']
91
110
  end
@@ -130,6 +149,8 @@ module Phrase
130
149
  id == o.id &&
131
150
  name == o.name &&
132
151
  briefing == o.briefing &&
152
+ autotranslate_enabled == o.autotranslate_enabled &&
153
+ source_locale_id == o.source_locale_id &&
133
154
  created_at == o.created_at &&
134
155
  updated_at == o.updated_at &&
135
156
  owner == o.owner &&
@@ -146,7 +167,7 @@ module Phrase
146
167
  # Calculates hash code according to all attributes.
147
168
  # @return [Integer] Hash code
148
169
  def hash
149
- [id, name, briefing, created_at, updated_at, owner, creator, locales].hash
170
+ [id, name, briefing, autotranslate_enabled, source_locale_id, created_at, updated_at, owner, creator, locales].hash
150
171
  end
151
172
 
152
173
  # Builds the object from hash
@@ -74,9 +74,55 @@ module Phrase
74
74
  # (Optional) Requires autotranslate_enabled to be true
75
75
  attr_accessor :autotranslate_overwrite_unverified_translations
76
76
 
77
+ # (Optional) Enable autocomplete-job behavior so that newly created keys and locales are automatically added to in-progress jobs.
78
+ attr_accessor :autocomplete_job_enabled
79
+
80
+ # (Optional) When enabled, translations are locked once a job moves into review.
81
+ attr_accessor :job_locking_enabled
82
+
83
+ # (Optional) Enable Smart Suggest for the project. Defaults to `true` when omitted.
84
+ attr_accessor :smart_suggest_enabled
85
+
86
+ # (Optional) Allow Smart Suggest to source suggestions from the project glossary. Defaults to `true` when omitted.
87
+ attr_accessor :smart_suggest_use_glossary
88
+
89
+ # (Optional) Allow Smart Suggest to source suggestions from machine translation. Defaults to `true` when omitted.
90
+ attr_accessor :smart_suggest_use_machine_translation
91
+
92
+ # (Optional) Collation used when sorting translation keys alphabetically. Defaults to `unicode_ci` when omitted.
93
+ attr_accessor :translation_keys_sort_collation
94
+
95
+ # (Optional) Sets the default encoding for Uploads. If you leave it empty, we will try to guess it automatically for you when you Upload a file. You can still override this value by setting the [`file_encoding`](/en/api/strings/uploads/upload-a-new-file) parameter for Uploads.
96
+ attr_accessor :default_encoding
97
+
98
+ # (Optional) CLDR plural-rule version used by the project.
99
+ attr_accessor :cldr_version
100
+
77
101
  # (Optional) List of placeholder styles enabled for the project.
78
102
  attr_accessor :placeholder_styles
79
103
 
104
+ class EnumAttributeValidator
105
+ attr_reader :datatype
106
+ attr_reader :allowable_values
107
+
108
+ def initialize(datatype, allowable_values)
109
+ @allowable_values = allowable_values.map do |value|
110
+ case datatype.to_s
111
+ when /Integer/i
112
+ value.to_i
113
+ when /Float/i
114
+ value.to_f
115
+ else
116
+ value
117
+ end
118
+ end
119
+ end
120
+
121
+ def valid?(value)
122
+ !value || allowable_values.include?(value)
123
+ end
124
+ end
125
+
80
126
  # Attribute mapping from ruby-style variable name to JSON key.
81
127
  def self.attribute_map
82
128
  {
@@ -104,6 +150,14 @@ module Phrase
104
150
  :'autotranslate_use_machine_translation' => :'autotranslate_use_machine_translation',
105
151
  :'autotranslate_use_translation_memory' => :'autotranslate_use_translation_memory',
106
152
  :'autotranslate_overwrite_unverified_translations' => :'autotranslate_overwrite_unverified_translations',
153
+ :'autocomplete_job_enabled' => :'autocomplete_job_enabled',
154
+ :'job_locking_enabled' => :'job_locking_enabled',
155
+ :'smart_suggest_enabled' => :'smart_suggest_enabled',
156
+ :'smart_suggest_use_glossary' => :'smart_suggest_use_glossary',
157
+ :'smart_suggest_use_machine_translation' => :'smart_suggest_use_machine_translation',
158
+ :'translation_keys_sort_collation' => :'translation_keys_sort_collation',
159
+ :'default_encoding' => :'default_encoding',
160
+ :'cldr_version' => :'cldr_version',
107
161
  :'placeholder_styles' => :'placeholder_styles'
108
162
  }
109
163
  end
@@ -135,6 +189,14 @@ module Phrase
135
189
  :'autotranslate_use_machine_translation' => :'Boolean',
136
190
  :'autotranslate_use_translation_memory' => :'Boolean',
137
191
  :'autotranslate_overwrite_unverified_translations' => :'Boolean',
192
+ :'autocomplete_job_enabled' => :'Boolean',
193
+ :'job_locking_enabled' => :'Boolean',
194
+ :'smart_suggest_enabled' => :'Boolean',
195
+ :'smart_suggest_use_glossary' => :'Boolean',
196
+ :'smart_suggest_use_machine_translation' => :'Boolean',
197
+ :'translation_keys_sort_collation' => :'String',
198
+ :'default_encoding' => :'String',
199
+ :'cldr_version' => :'String',
138
200
  :'placeholder_styles' => :'Array<String>'
139
201
  }
140
202
  end
@@ -256,6 +318,38 @@ module Phrase
256
318
  self.autotranslate_overwrite_unverified_translations = attributes[:'autotranslate_overwrite_unverified_translations']
257
319
  end
258
320
 
321
+ if attributes.key?(:'autocomplete_job_enabled')
322
+ self.autocomplete_job_enabled = attributes[:'autocomplete_job_enabled']
323
+ end
324
+
325
+ if attributes.key?(:'job_locking_enabled')
326
+ self.job_locking_enabled = attributes[:'job_locking_enabled']
327
+ end
328
+
329
+ if attributes.key?(:'smart_suggest_enabled')
330
+ self.smart_suggest_enabled = attributes[:'smart_suggest_enabled']
331
+ end
332
+
333
+ if attributes.key?(:'smart_suggest_use_glossary')
334
+ self.smart_suggest_use_glossary = attributes[:'smart_suggest_use_glossary']
335
+ end
336
+
337
+ if attributes.key?(:'smart_suggest_use_machine_translation')
338
+ self.smart_suggest_use_machine_translation = attributes[:'smart_suggest_use_machine_translation']
339
+ end
340
+
341
+ if attributes.key?(:'translation_keys_sort_collation')
342
+ self.translation_keys_sort_collation = attributes[:'translation_keys_sort_collation']
343
+ end
344
+
345
+ if attributes.key?(:'default_encoding')
346
+ self.default_encoding = attributes[:'default_encoding']
347
+ end
348
+
349
+ if attributes.key?(:'cldr_version')
350
+ self.cldr_version = attributes[:'cldr_version']
351
+ end
352
+
259
353
  if attributes.key?(:'placeholder_styles')
260
354
  if (value = attributes[:'placeholder_styles']).is_a?(Array)
261
355
  self.placeholder_styles = value
@@ -278,9 +372,21 @@ module Phrase
278
372
  # @return true if the model is valid
279
373
  def valid?
280
374
  return false if @name.nil?
375
+ default_encoding_validator = EnumAttributeValidator.new('String', ["UTF-8", "UTF-16", "UTF-16BE", "UTF-16LE", "ISO-8859-1"])
376
+ return false unless default_encoding_validator.valid?(@default_encoding)
281
377
  true
282
378
  end
283
379
 
380
+ # Custom attribute writer method checking allowed values (enum).
381
+ # @param [Object] default_encoding Object to be assigned
382
+ def default_encoding=(default_encoding)
383
+ validator = EnumAttributeValidator.new('String', ["UTF-8", "UTF-16", "UTF-16BE", "UTF-16LE", "ISO-8859-1"])
384
+ unless validator.valid?(default_encoding)
385
+ fail ArgumentError, "invalid value for \"default_encoding\", must be one of #{validator.allowable_values}."
386
+ end
387
+ @default_encoding = default_encoding
388
+ end
389
+
284
390
  # Checks equality by comparing each attribute.
285
391
  # @param [Object] Object to be compared
286
392
  def ==(o)
@@ -310,6 +416,14 @@ module Phrase
310
416
  autotranslate_use_machine_translation == o.autotranslate_use_machine_translation &&
311
417
  autotranslate_use_translation_memory == o.autotranslate_use_translation_memory &&
312
418
  autotranslate_overwrite_unverified_translations == o.autotranslate_overwrite_unverified_translations &&
419
+ autocomplete_job_enabled == o.autocomplete_job_enabled &&
420
+ job_locking_enabled == o.job_locking_enabled &&
421
+ smart_suggest_enabled == o.smart_suggest_enabled &&
422
+ smart_suggest_use_glossary == o.smart_suggest_use_glossary &&
423
+ smart_suggest_use_machine_translation == o.smart_suggest_use_machine_translation &&
424
+ translation_keys_sort_collation == o.translation_keys_sort_collation &&
425
+ default_encoding == o.default_encoding &&
426
+ cldr_version == o.cldr_version &&
313
427
  placeholder_styles == o.placeholder_styles
314
428
  end
315
429
 
@@ -322,7 +436,7 @@ module Phrase
322
436
  # Calculates hash code according to all attributes.
323
437
  # @return [Integer] Hash code
324
438
  def hash
325
- [name, main_format, media, shares_translation_memory, project_image, remove_project_image, account_id, point_of_contact, source_project_id, workflow, machine_translation_enabled, enable_branching, protect_master_branch, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, zero_plural_form_enabled, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, autotranslate_overwrite_unverified_translations, placeholder_styles].hash
439
+ [name, main_format, media, shares_translation_memory, project_image, remove_project_image, account_id, point_of_contact, source_project_id, workflow, machine_translation_enabled, enable_branching, protect_master_branch, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, zero_plural_form_enabled, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, autotranslate_overwrite_unverified_translations, autocomplete_job_enabled, job_locking_enabled, smart_suggest_enabled, smart_suggest_use_glossary, smart_suggest_use_machine_translation, translation_keys_sort_collation, default_encoding, cldr_version, placeholder_styles].hash
326
440
  end
327
441
 
328
442
  # Builds the object from hash
@@ -52,6 +52,10 @@ module Phrase
52
52
 
53
53
  attr_accessor :autotranslate_use_translation_memory
54
54
 
55
+ attr_accessor :autotranslate_overwrite_unverified_translations
56
+
57
+ attr_accessor :autocomplete_job_enabled
58
+
55
59
  attr_accessor :default_encoding
56
60
 
57
61
  attr_accessor :cldr_version
@@ -60,6 +64,8 @@ module Phrase
60
64
 
61
65
  attr_accessor :placeholder_styles
62
66
 
67
+ attr_accessor :branch
68
+
63
69
  # Attribute mapping from ruby-style variable name to JSON key.
64
70
  def self.attribute_map
65
71
  {
@@ -88,10 +94,13 @@ module Phrase
88
94
  :'autotranslate_mark_as_unverified' => :'autotranslate_mark_as_unverified',
89
95
  :'autotranslate_use_machine_translation' => :'autotranslate_use_machine_translation',
90
96
  :'autotranslate_use_translation_memory' => :'autotranslate_use_translation_memory',
97
+ :'autotranslate_overwrite_unverified_translations' => :'autotranslate_overwrite_unverified_translations',
98
+ :'autocomplete_job_enabled' => :'autocomplete_job_enabled',
91
99
  :'default_encoding' => :'default_encoding',
92
100
  :'cldr_version' => :'cldr_version',
93
101
  :'job_locking_enabled' => :'job_locking_enabled',
94
- :'placeholder_styles' => :'placeholder_styles'
102
+ :'placeholder_styles' => :'placeholder_styles',
103
+ :'branch' => :'branch'
95
104
  }
96
105
  end
97
106
 
@@ -123,10 +132,13 @@ module Phrase
123
132
  :'autotranslate_mark_as_unverified' => :'Boolean',
124
133
  :'autotranslate_use_machine_translation' => :'Boolean',
125
134
  :'autotranslate_use_translation_memory' => :'Boolean',
135
+ :'autotranslate_overwrite_unverified_translations' => :'Boolean',
136
+ :'autocomplete_job_enabled' => :'Boolean',
126
137
  :'default_encoding' => :'String',
127
138
  :'cldr_version' => :'String',
128
139
  :'job_locking_enabled' => :'Boolean',
129
- :'placeholder_styles' => :'Array<String>'
140
+ :'placeholder_styles' => :'Array<String>',
141
+ :'branch' => :'Branch'
130
142
  }
131
143
  end
132
144
 
@@ -258,6 +270,14 @@ module Phrase
258
270
  self.autotranslate_use_translation_memory = attributes[:'autotranslate_use_translation_memory']
259
271
  end
260
272
 
273
+ if attributes.key?(:'autotranslate_overwrite_unverified_translations')
274
+ self.autotranslate_overwrite_unverified_translations = attributes[:'autotranslate_overwrite_unverified_translations']
275
+ end
276
+
277
+ if attributes.key?(:'autocomplete_job_enabled')
278
+ self.autocomplete_job_enabled = attributes[:'autocomplete_job_enabled']
279
+ end
280
+
261
281
  if attributes.key?(:'default_encoding')
262
282
  self.default_encoding = attributes[:'default_encoding']
263
283
  end
@@ -275,6 +295,10 @@ module Phrase
275
295
  self.placeholder_styles = value
276
296
  end
277
297
  end
298
+
299
+ if attributes.key?(:'branch')
300
+ self.branch = attributes[:'branch']
301
+ end
278
302
  end
279
303
 
280
304
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -320,10 +344,13 @@ module Phrase
320
344
  autotranslate_mark_as_unverified == o.autotranslate_mark_as_unverified &&
321
345
  autotranslate_use_machine_translation == o.autotranslate_use_machine_translation &&
322
346
  autotranslate_use_translation_memory == o.autotranslate_use_translation_memory &&
347
+ autotranslate_overwrite_unverified_translations == o.autotranslate_overwrite_unverified_translations &&
348
+ autocomplete_job_enabled == o.autocomplete_job_enabled &&
323
349
  default_encoding == o.default_encoding &&
324
350
  cldr_version == o.cldr_version &&
325
351
  job_locking_enabled == o.job_locking_enabled &&
326
- placeholder_styles == o.placeholder_styles
352
+ placeholder_styles == o.placeholder_styles &&
353
+ branch == o.branch
327
354
  end
328
355
 
329
356
  # @see the `==` method
@@ -335,7 +362,7 @@ module Phrase
335
362
  # Calculates hash code according to all attributes.
336
363
  # @return [Integer] Hash code
337
364
  def hash
338
- [id, name, slug, main_format, project_image_url, media, account, space, point_of_contact, created_at, updated_at, shares_translation_memory, machine_translation_enabled, zero_plural_form_enabled, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, enable_branching, protect_master_branch, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, default_encoding, cldr_version, job_locking_enabled, placeholder_styles].hash
365
+ [id, name, slug, main_format, project_image_url, media, account, space, point_of_contact, created_at, updated_at, shares_translation_memory, machine_translation_enabled, zero_plural_form_enabled, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, enable_branching, protect_master_branch, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, autotranslate_overwrite_unverified_translations, autocomplete_job_enabled, default_encoding, cldr_version, job_locking_enabled, placeholder_styles, branch].hash
339
366
  end
340
367
 
341
368
  # Builds the object from hash
@@ -2,7 +2,7 @@ require 'date'
2
2
 
3
3
  module Phrase
4
4
  class ProjectUpdateParameters
5
- # Required if the requesting user is a member of multiple accounts. Account ID to specify the actual account the project should be created in.
5
+ # (Optional) ID of an account the requesting user belongs to. Used only to disambiguate the request context; the project itself cannot be moved between accounts through this endpoint.
6
6
  attr_accessor :account_id
7
7
 
8
8
  # (Optional) Name of the project
@@ -77,6 +77,27 @@ module Phrase
77
77
  # (Optional) List of placeholder styles enabled for the project.
78
78
  attr_accessor :placeholder_styles
79
79
 
80
+ # (Optional) Enable autocomplete-job behavior so that newly created keys and locales are automatically added to in-progress jobs.
81
+ attr_accessor :autocomplete_job_enabled
82
+
83
+ # (Optional) When enabled, translations are locked once a job moves into review.
84
+ attr_accessor :job_locking_enabled
85
+
86
+ # (Optional) Enable Smart Suggest for the project.
87
+ attr_accessor :smart_suggest_enabled
88
+
89
+ # (Optional) Allow Smart Suggest to source suggestions from the project glossary.
90
+ attr_accessor :smart_suggest_use_glossary
91
+
92
+ # (Optional) Allow Smart Suggest to source suggestions from machine translation.
93
+ attr_accessor :smart_suggest_use_machine_translation
94
+
95
+ # (Optional) Collation used when sorting translation keys alphabetically.
96
+ attr_accessor :translation_keys_sort_collation
97
+
98
+ # (Optional) CLDR plural-rule version used by the project.
99
+ attr_accessor :cldr_version
100
+
80
101
  class EnumAttributeValidator
81
102
  attr_reader :datatype
82
103
  attr_reader :allowable_values
@@ -126,7 +147,14 @@ module Phrase
126
147
  :'autotranslate_use_translation_memory' => :'autotranslate_use_translation_memory',
127
148
  :'autotranslate_overwrite_unverified_translations' => :'autotranslate_overwrite_unverified_translations',
128
149
  :'default_encoding' => :'default_encoding',
129
- :'placeholder_styles' => :'placeholder_styles'
150
+ :'placeholder_styles' => :'placeholder_styles',
151
+ :'autocomplete_job_enabled' => :'autocomplete_job_enabled',
152
+ :'job_locking_enabled' => :'job_locking_enabled',
153
+ :'smart_suggest_enabled' => :'smart_suggest_enabled',
154
+ :'smart_suggest_use_glossary' => :'smart_suggest_use_glossary',
155
+ :'smart_suggest_use_machine_translation' => :'smart_suggest_use_machine_translation',
156
+ :'translation_keys_sort_collation' => :'translation_keys_sort_collation',
157
+ :'cldr_version' => :'cldr_version'
130
158
  }
131
159
  end
132
160
 
@@ -157,7 +185,14 @@ module Phrase
157
185
  :'autotranslate_use_translation_memory' => :'Boolean',
158
186
  :'autotranslate_overwrite_unverified_translations' => :'Boolean',
159
187
  :'default_encoding' => :'String',
160
- :'placeholder_styles' => :'Array<String>'
188
+ :'placeholder_styles' => :'Array<String>',
189
+ :'autocomplete_job_enabled' => :'Boolean',
190
+ :'job_locking_enabled' => :'Boolean',
191
+ :'smart_suggest_enabled' => :'Boolean',
192
+ :'smart_suggest_use_glossary' => :'Boolean',
193
+ :'smart_suggest_use_machine_translation' => :'Boolean',
194
+ :'translation_keys_sort_collation' => :'String',
195
+ :'cldr_version' => :'String'
161
196
  }
162
197
  end
163
198
 
@@ -283,6 +318,34 @@ module Phrase
283
318
  self.placeholder_styles = value
284
319
  end
285
320
  end
321
+
322
+ if attributes.key?(:'autocomplete_job_enabled')
323
+ self.autocomplete_job_enabled = attributes[:'autocomplete_job_enabled']
324
+ end
325
+
326
+ if attributes.key?(:'job_locking_enabled')
327
+ self.job_locking_enabled = attributes[:'job_locking_enabled']
328
+ end
329
+
330
+ if attributes.key?(:'smart_suggest_enabled')
331
+ self.smart_suggest_enabled = attributes[:'smart_suggest_enabled']
332
+ end
333
+
334
+ if attributes.key?(:'smart_suggest_use_glossary')
335
+ self.smart_suggest_use_glossary = attributes[:'smart_suggest_use_glossary']
336
+ end
337
+
338
+ if attributes.key?(:'smart_suggest_use_machine_translation')
339
+ self.smart_suggest_use_machine_translation = attributes[:'smart_suggest_use_machine_translation']
340
+ end
341
+
342
+ if attributes.key?(:'translation_keys_sort_collation')
343
+ self.translation_keys_sort_collation = attributes[:'translation_keys_sort_collation']
344
+ end
345
+
346
+ if attributes.key?(:'cldr_version')
347
+ self.cldr_version = attributes[:'cldr_version']
348
+ end
286
349
  end
287
350
 
288
351
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -339,7 +402,14 @@ module Phrase
339
402
  autotranslate_use_translation_memory == o.autotranslate_use_translation_memory &&
340
403
  autotranslate_overwrite_unverified_translations == o.autotranslate_overwrite_unverified_translations &&
341
404
  default_encoding == o.default_encoding &&
342
- placeholder_styles == o.placeholder_styles
405
+ placeholder_styles == o.placeholder_styles &&
406
+ autocomplete_job_enabled == o.autocomplete_job_enabled &&
407
+ job_locking_enabled == o.job_locking_enabled &&
408
+ smart_suggest_enabled == o.smart_suggest_enabled &&
409
+ smart_suggest_use_glossary == o.smart_suggest_use_glossary &&
410
+ smart_suggest_use_machine_translation == o.smart_suggest_use_machine_translation &&
411
+ translation_keys_sort_collation == o.translation_keys_sort_collation &&
412
+ cldr_version == o.cldr_version
343
413
  end
344
414
 
345
415
  # @see the `==` method
@@ -351,7 +421,7 @@ module Phrase
351
421
  # Calculates hash code according to all attributes.
352
422
  # @return [Integer] Hash code
353
423
  def hash
354
- [account_id, name, point_of_contact, main_format, media, shares_translation_memory, project_image, remove_project_image, workflow, machine_translation_enabled, enable_branching, protect_master_branch, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, zero_plural_form_enabled, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, autotranslate_overwrite_unverified_translations, default_encoding, placeholder_styles].hash
424
+ [account_id, name, point_of_contact, main_format, media, shares_translation_memory, project_image, remove_project_image, workflow, machine_translation_enabled, enable_branching, protect_master_branch, enable_all_data_type_translation_keys_for_translators, enable_icu_message_format, zero_plural_form_enabled, autotranslate_enabled, autotranslate_check_new_translation_keys, autotranslate_check_new_uploads, autotranslate_check_new_locales, autotranslate_mark_as_unverified, autotranslate_use_machine_translation, autotranslate_use_translation_memory, autotranslate_overwrite_unverified_translations, default_encoding, placeholder_styles, autocomplete_job_enabled, job_locking_enabled, smart_suggest_enabled, smart_suggest_use_glossary, smart_suggest_use_machine_translation, translation_keys_sort_collation, cldr_version].hash
355
425
  end
356
426
 
357
427
  # Builds the object from hash
@@ -20,6 +20,8 @@ module Phrase
20
20
 
21
21
  attr_accessor :tags
22
22
 
23
+ attr_accessor :state
24
+
23
25
  attr_accessor :project
24
26
 
25
27
  attr_accessor :created_at
@@ -38,6 +40,7 @@ module Phrase
38
40
  :'environments' => :'environments',
39
41
  :'locales' => :'locales',
40
42
  :'tags' => :'tags',
43
+ :'state' => :'state',
41
44
  :'project' => :'project',
42
45
  :'created_at' => :'created_at',
43
46
  :'updated_at' => :'updated_at'
@@ -56,6 +59,7 @@ module Phrase
56
59
  :'environments' => :'Array<String>',
57
60
  :'locales' => :'Array<LocalePreview>',
58
61
  :'tags' => :'Array<String>',
62
+ :'state' => :'String',
59
63
  :'project' => :'ProjectShort',
60
64
  :'created_at' => :'DateTime',
61
65
  :'updated_at' => :'DateTime'
@@ -127,6 +131,10 @@ module Phrase
127
131
  end
128
132
  end
129
133
 
134
+ if attributes.key?(:'state')
135
+ self.state = attributes[:'state']
136
+ end
137
+
130
138
  if attributes.key?(:'project')
131
139
  self.project = attributes[:'project']
132
140
  end
@@ -167,6 +175,7 @@ module Phrase
167
175
  environments == o.environments &&
168
176
  locales == o.locales &&
169
177
  tags == o.tags &&
178
+ state == o.state &&
170
179
  project == o.project &&
171
180
  created_at == o.created_at &&
172
181
  updated_at == o.updated_at
@@ -181,7 +190,7 @@ module Phrase
181
190
  # Calculates hash code according to all attributes.
182
191
  # @return [Integer] Hash code
183
192
  def hash
184
- [id, version, app_min_version, app_max_version, description, platforms, environments, locales, tags, project, created_at, updated_at].hash
193
+ [id, version, app_min_version, app_max_version, description, platforms, environments, locales, tags, state, project, created_at, updated_at].hash
185
194
  end
186
195
 
187
196
  # Builds the object from hash