phrase 4.27.0 → 4.28.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +3 -3
- data/docs/KeyCreateParameters.md +1 -1
- data/docs/KeyUpdateParameters.md +1 -1
- data/docs/MachineTranslationSettingsUpdateParameters.md +1 -1
- data/docs/MemberUpdateParameters.md +2 -2
- data/docs/MembersApi.md +1 -1
- data/docs/ProjectCreateParameters.md +2 -2
- data/docs/ProjectDetails.md +2 -0
- data/docs/ProjectUpdateParameters.md +2 -2
- data/docs/ProjectsApi.md +1 -1
- data/docs/ScreenshotUpdateParameters.md +1 -1
- data/docs/SpacesApi.md +3 -1
- data/lib/phrase/api/members_api.rb +2 -2
- data/lib/phrase/api/projects_api.rb +2 -2
- data/lib/phrase/api/spaces_api.rb +3 -0
- data/lib/phrase/models/machine_translation_settings_update_parameters.rb +1 -1
- data/lib/phrase/models/member_update_parameters.rb +2 -2
- data/lib/phrase/models/project_create_parameters.rb +13 -1
- data/lib/phrase/models/project_details.rb +44 -1
- data/lib/phrase/models/project_update_parameters.rb +13 -1
- data/lib/phrase/version.rb +1 -1
- data/spec/api/members_api_spec.rb +1 -1
- data/spec/api/projects_api_spec.rb +1 -1
- data/spec/api/spaces_api_spec.rb +1 -0
- data/spec/models/project_create_parameters_spec.rb +4 -0
- data/spec/models/project_details_spec.rb +10 -0
- data/spec/models/project_update_parameters_spec.rb +4 -0
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e1279517427a6dccac92b6801d8c6037c17ce70ca827fe5092e3180da61126e9
|
|
4
|
+
data.tar.gz: e53f99f7457a358d506b0c42a53e9658a0007ecd9e804fff947c12f97af37603
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 131ffb500ebc76f2e5093e0e16c9532b213ddbf3ba646a56de2d667b80f8b79a8c60ff9729c920e51d8bc559bfb27225dc03a587d199c1f6778350d99bc6e599
|
|
7
|
+
data.tar.gz: c80625ca357986d28741426ddb7ef3ad97f253fed0e4a8b3f70585d91c3e70b93c38f55cce17ab661f6c48da56178429bd955c9948a08fece124967422fe1421
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [4.28.0](https://github.com/phrase/strings-openapi/compare/ruby-v4.27.0...ruby-v4.28.0) (2026-09-17)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **API:** add name filter query parameter to spaces list #STRINGS-3036 ([#1267](https://github.com/phrase/strings-openapi/issues/1267)) ([3b54f73](https://github.com/phrase/strings-openapi/commit/3b54f73252698dd93411cfaffff3a97ea114be92))
|
|
9
|
+
* **API:** document translation_keys_sort_collation on /projects endpoints ([#1270](https://github.com/phrase/strings-openapi/issues/1270)) ([0a22b46](https://github.com/phrase/strings-openapi/commit/0a22b467aa077a1743546bc53add0628c8c05927))
|
|
10
|
+
|
|
3
11
|
## [4.27.0](https://github.com/phrase/strings-openapi/compare/ruby-v4.26.0...ruby-v4.27.0) (2026-09-11)
|
|
4
12
|
|
|
5
13
|
|
data/README.md
CHANGED
|
@@ -7,7 +7,7 @@ Phrase Strings is a translation management platform for software projects. You c
|
|
|
7
7
|
## This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
|
8
8
|
|
|
9
9
|
- API version: 2.0.0
|
|
10
|
-
- Package version: 4.
|
|
10
|
+
- Package version: 4.28.0
|
|
11
11
|
- Build package: org.openapitools.codegen.languages.RubyClientCodegen
|
|
12
12
|
For more information, please visit [https://developers.phrase.com/api/](https://developers.phrase.com/api/)
|
|
13
13
|
|
|
@@ -56,10 +56,10 @@ gem build phrase.gemspec
|
|
|
56
56
|
Then install the gem locally:
|
|
57
57
|
|
|
58
58
|
```shell
|
|
59
|
-
gem install ./phrase-4.
|
|
59
|
+
gem install ./phrase-4.28.0.gem
|
|
60
60
|
```
|
|
61
61
|
|
|
62
|
-
(for development, run `gem install --dev ./phrase-4.
|
|
62
|
+
(for development, run `gem install --dev ./phrase-4.28.0.gem` to install the development dependencies)
|
|
63
63
|
|
|
64
64
|
## Getting Started
|
|
65
65
|
|
data/docs/KeyCreateParameters.md
CHANGED
|
@@ -40,7 +40,7 @@ instance = Phrase::KeyCreateParameters.new(branch: my-feature-branch,
|
|
|
40
40
|
data_type: number,
|
|
41
41
|
tags: awesome-feature,needs-proofreading,
|
|
42
42
|
max_characters_allowed: 140,
|
|
43
|
-
screenshot: [B@
|
|
43
|
+
screenshot: [B@4393cb22,
|
|
44
44
|
remove_screenshot: null,
|
|
45
45
|
unformatted: null,
|
|
46
46
|
default_translation_content: Default translation content,
|
data/docs/KeyUpdateParameters.md
CHANGED
|
@@ -38,7 +38,7 @@ instance = Phrase::KeyUpdateParameters.new(branch: my-feature-branch,
|
|
|
38
38
|
data_type: number,
|
|
39
39
|
tags: awesome-feature,needs-proofreading,
|
|
40
40
|
max_characters_allowed: 140,
|
|
41
|
-
screenshot: [B@
|
|
41
|
+
screenshot: [B@3b1bf4bf,
|
|
42
42
|
remove_screenshot: null,
|
|
43
43
|
unformatted: null,
|
|
44
44
|
xml_space_preserve: null,
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Name | Type | Description | Notes
|
|
6
6
|
------------ | ------------- | ------------- | -------------
|
|
7
|
-
**default_service** | **String** | The machine translation engine to use as the account default. Supported values: language_ai_translate, aita_translate, microsoft_translate, google_translate, amazon_translate
|
|
7
|
+
**default_service** | **String** | The machine translation engine to use as the account default. Supported values: language_ai_translate, aita_translate, microsoft_translate, google_translate, amazon_translate. Pass null or an empty string to reset to the plan default. | [optional]
|
|
8
8
|
|
|
9
9
|
## Code Sample
|
|
10
10
|
|
|
@@ -7,8 +7,8 @@ Name | Type | Description | Notes
|
|
|
7
7
|
**strategy** | **String** | Update strategy, can be any of set, add, remove. If provided, it will set, add or remove given spaces, projects and locale ids from users access list. | [optional]
|
|
8
8
|
**role** | **String** | Member role, can be any of of Admin, ProjectManager, Developer, Designer, Translator | [optional]
|
|
9
9
|
**project_ids** | **String** | List of project ids the user has access to. | [optional]
|
|
10
|
-
**locale_ids** | **String** | List of locale ids the user has access to. | [optional]
|
|
11
|
-
**default_locale_codes** | **Array<String>** | List of default locales for the user. | [optional]
|
|
10
|
+
**locale_ids** | **String** | List of locale ids the user has access to. This is project-scoped and must be paired with `project_ids` (and `strategy`) to take effect; it does not grant account-wide language access. | [optional]
|
|
11
|
+
**default_locale_codes** | **Array<String>** | List of default locales for the user, applied across all of the user's projects. This is the account-level field corresponding to \"Language access\" in the translator profile UI. | [optional]
|
|
12
12
|
**space_ids** | **Array<String>** | List of spaces the user is assigned to. | [optional]
|
|
13
13
|
**permissions** | **Hash<String, String>** | Additional permissions depending on member role. Available permissions are `create_upload` and `review_translations` | [optional]
|
|
14
14
|
|
data/docs/MembersApi.md
CHANGED
|
@@ -143,7 +143,7 @@ Response<([**Member**](Member.md))>
|
|
|
143
143
|
|
|
144
144
|
Update a member
|
|
145
145
|
|
|
146
|
-
Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. Access token scope must include `team.manage`.
|
|
146
|
+
Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. To grant account-wide language access instead of access scoped to specific projects, use `default_locale_codes`. Access token scope must include `team.manage`.
|
|
147
147
|
|
|
148
148
|
### Example
|
|
149
149
|
|
|
@@ -38,7 +38,7 @@ Name | Type | Description | Notes
|
|
|
38
38
|
**smart_suggest_use_machine_translation** | **Boolean** | (Optional) Allow Smart Suggest to source suggestions from machine translation. Defaults to `true` when omitted. | [optional]
|
|
39
39
|
**translation_keys_sort_collation** | **String** | (Optional) Collation used when sorting translation keys alphabetically. Defaults to `unicode_ci` when omitted. | [optional]
|
|
40
40
|
**default_encoding** | **String** | (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. | [optional]
|
|
41
|
-
**cldr_version** | **String** | (Optional) CLDR plural-rule version used by the project. | [optional]
|
|
41
|
+
**cldr_version** | **String** | (Optional) CLDR plural-rule version used by the project. Pass `legacy` for pre-CLDR pluralization behaviour, or a CLDR version string such as `cldr48`. Also used as the default version for the ICU skeleton endpoint (`POST /icu/skeleton`) when its own `cldr_version` parameter is omitted. | [optional]
|
|
42
42
|
**placeholder_styles** | **Array<String>** | (Optional) List of placeholder styles enabled for the project. | [optional]
|
|
43
43
|
|
|
44
44
|
## Code Sample
|
|
@@ -52,7 +52,7 @@ instance = Phrase::ProjectCreateParameters.new(name: My Android Project,
|
|
|
52
52
|
shares_translation_memory: true,
|
|
53
53
|
tm_ids: ["abcd1234cdef1234abcd1234cdef1234"],
|
|
54
54
|
term_base_ids: ["abcd1234cdef1234abcd1234cdef1234"],
|
|
55
|
-
project_image: [B@
|
|
55
|
+
project_image: [B@104d07a8,
|
|
56
56
|
remove_project_image: null,
|
|
57
57
|
account_id: abcd1234,
|
|
58
58
|
point_of_contact: abcd1234,
|
data/docs/ProjectDetails.md
CHANGED
|
@@ -34,6 +34,7 @@ Name | Type | Description | Notes
|
|
|
34
34
|
**autocomplete_job_enabled** | **Boolean** | | [optional]
|
|
35
35
|
**default_encoding** | **String** | | [optional]
|
|
36
36
|
**cldr_version** | **String** | | [optional]
|
|
37
|
+
**translation_keys_sort_collation** | **String** | | [optional]
|
|
37
38
|
**job_locking_enabled** | **Boolean** | | [optional]
|
|
38
39
|
**placeholder_styles** | **Array<String>** | | [optional]
|
|
39
40
|
**branch** | [**Branch**](Branch.md) | | [optional]
|
|
@@ -73,6 +74,7 @@ instance = Phrase::ProjectDetails.new(id: null,
|
|
|
73
74
|
autocomplete_job_enabled: false,
|
|
74
75
|
default_encoding: UTF-8,
|
|
75
76
|
cldr_version: legacy,
|
|
77
|
+
translation_keys_sort_collation: unicode_ci,
|
|
76
78
|
job_locking_enabled: false,
|
|
77
79
|
placeholder_styles: ["rails_i18n","java_properties"],
|
|
78
80
|
branch: null)
|
|
@@ -38,7 +38,7 @@ Name | Type | Description | Notes
|
|
|
38
38
|
**smart_suggest_use_glossary** | **Boolean** | (Optional) Allow Smart Suggest to source suggestions from the project glossary. | [optional]
|
|
39
39
|
**smart_suggest_use_machine_translation** | **Boolean** | (Optional) Allow Smart Suggest to source suggestions from machine translation. | [optional]
|
|
40
40
|
**translation_keys_sort_collation** | **String** | (Optional) Collation used when sorting translation keys alphabetically. | [optional]
|
|
41
|
-
**cldr_version** | **String** | (Optional) CLDR plural-rule version used by the project. | [optional]
|
|
41
|
+
**cldr_version** | **String** | (Optional) CLDR plural-rule version used by the project. Pass `legacy` for pre-CLDR pluralization behaviour, or a CLDR version string such as `cldr48`. Also used as the default version for the ICU skeleton endpoint (`POST /icu/skeleton`) when its own `cldr_version` parameter is omitted. | [optional]
|
|
42
42
|
|
|
43
43
|
## Code Sample
|
|
44
44
|
|
|
@@ -53,7 +53,7 @@ instance = Phrase::ProjectUpdateParameters.new(account_id: abcd1234,
|
|
|
53
53
|
shares_translation_memory: true,
|
|
54
54
|
tm_ids: ["abcd1234cdef1234abcd1234cdef1234"],
|
|
55
55
|
term_base_ids: ["abcd1234cdef1234abcd1234cdef1234"],
|
|
56
|
-
project_image: [B@
|
|
56
|
+
project_image: [B@6fa53b0d,
|
|
57
57
|
remove_project_image: false,
|
|
58
58
|
workflow: review,
|
|
59
59
|
machine_translation_enabled: true,
|
data/docs/ProjectsApi.md
CHANGED
|
@@ -200,7 +200,7 @@ Response<([**ProjectDetails**](ProjectDetails.md))>
|
|
|
200
200
|
|
|
201
201
|
Update a project
|
|
202
202
|
|
|
203
|
-
Update an existing project.
|
|
203
|
+
Update an existing project, including its review workflow, pre-translation/autotranslate rules, and machine-translation configuration (see workflow, machine_translation_enabled, and the autotranslate_* fields below).
|
|
204
204
|
|
|
205
205
|
### Example
|
|
206
206
|
|
data/docs/SpacesApi.md
CHANGED
|
@@ -297,7 +297,8 @@ account_id = 'account_id_example' # String | Account ID
|
|
|
297
297
|
opts = {
|
|
298
298
|
x_phrase_app_otp: 'x_phrase_app_otp_example', # String | Two-Factor-Authentication token (optional)
|
|
299
299
|
page: 1, # Integer | Page number
|
|
300
|
-
per_page: 25 # Integer | Limit on the number of objects to be returned, between 1 and 100. 25 by default
|
|
300
|
+
per_page: 25, # Integer | Limit on the number of objects to be returned, between 1 and 100. 25 by default
|
|
301
|
+
q: 'name:Engineering' # String | Filter results by name. Supports the prefix-match syntax `name:<value>`, which returns only spaces whose names begin with `<value>`. Other query formats are ignored; omitting `q` returns all accessible spaces.
|
|
301
302
|
}
|
|
302
303
|
|
|
303
304
|
begin
|
|
@@ -318,6 +319,7 @@ Name | Type | Description | Notes
|
|
|
318
319
|
**x_phrase_app_otp** | **String**| Two-Factor-Authentication token (optional) | [optional]
|
|
319
320
|
**page** | **Integer**| Page number | [optional]
|
|
320
321
|
**per_page** | **Integer**| Limit on the number of objects to be returned, between 1 and 100. 25 by default | [optional]
|
|
322
|
+
**q** | **String**| Filter results by name. Supports the prefix-match syntax `name:<value>`, which returns only spaces whose names begin with `<value>`. Other query formats are ignored; omitting `q` returns all accessible spaces. | [optional]
|
|
321
323
|
|
|
322
324
|
### Return type
|
|
323
325
|
|
|
@@ -152,7 +152,7 @@ module Phrase
|
|
|
152
152
|
end
|
|
153
153
|
|
|
154
154
|
# Update a member
|
|
155
|
-
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. Access token scope must include `team.manage`.
|
|
155
|
+
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. To grant account-wide language access instead of access scoped to specific projects, use `default_locale_codes`. Access token scope must include `team.manage`.
|
|
156
156
|
# @param account_id [String] Account ID
|
|
157
157
|
# @param id [String] ID
|
|
158
158
|
# @param member_update_parameters [MemberUpdateParameters]
|
|
@@ -165,7 +165,7 @@ module Phrase
|
|
|
165
165
|
end
|
|
166
166
|
|
|
167
167
|
# Update a member
|
|
168
|
-
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. Access token scope must include `team.manage`.
|
|
168
|
+
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. To grant account-wide language access instead of access scoped to specific projects, use `default_locale_codes`. Access token scope must include `team.manage`.
|
|
169
169
|
# @param account_id [String] Account ID
|
|
170
170
|
# @param id [String] ID
|
|
171
171
|
# @param member_update_parameters [MemberUpdateParameters]
|
|
@@ -208,7 +208,7 @@ module Phrase
|
|
|
208
208
|
end
|
|
209
209
|
|
|
210
210
|
# Update a project
|
|
211
|
-
# Update an existing project.
|
|
211
|
+
# Update an existing project, including its review workflow, pre-translation/autotranslate rules, and machine-translation configuration (see workflow, machine_translation_enabled, and the autotranslate_* fields below).
|
|
212
212
|
# @param id [String] ID
|
|
213
213
|
# @param project_update_parameters [ProjectUpdateParameters]
|
|
214
214
|
# @param [Hash] opts the optional parameters
|
|
@@ -220,7 +220,7 @@ module Phrase
|
|
|
220
220
|
end
|
|
221
221
|
|
|
222
222
|
# Update a project
|
|
223
|
-
# Update an existing project.
|
|
223
|
+
# Update an existing project, including its review workflow, pre-translation/autotranslate rules, and machine-translation configuration (see workflow, machine_translation_enabled, and the autotranslate_* fields below).
|
|
224
224
|
# @param id [String] ID
|
|
225
225
|
# @param project_update_parameters [ProjectUpdateParameters]
|
|
226
226
|
# @param [Hash] opts the optional parameters
|
|
@@ -310,6 +310,7 @@ module Phrase
|
|
|
310
310
|
# @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
|
|
311
311
|
# @option opts [Integer] :page Page number
|
|
312
312
|
# @option opts [Integer] :per_page Limit on the number of objects to be returned, between 1 and 100. 25 by default
|
|
313
|
+
# @option opts [String] :q Filter results by name. Supports the prefix-match syntax `name:<value>`, which returns only spaces whose names begin with `<value>`. Other query formats are ignored; omitting `q` returns all accessible spaces.
|
|
313
314
|
# @return [Array<Space>]
|
|
314
315
|
def spaces_list(account_id, opts = {})
|
|
315
316
|
data, _status_code, _headers = spaces_list_with_http_info(account_id, opts)
|
|
@@ -323,6 +324,7 @@ module Phrase
|
|
|
323
324
|
# @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
|
|
324
325
|
# @option opts [Integer] :page Page number
|
|
325
326
|
# @option opts [Integer] :per_page Limit on the number of objects to be returned, between 1 and 100. 25 by default
|
|
327
|
+
# @option opts [String] :q Filter results by name. Supports the prefix-match syntax `name:<value>`, which returns only spaces whose names begin with `<value>`. Other query formats are ignored; omitting `q` returns all accessible spaces.
|
|
326
328
|
# @return [Array<(Response<(Array<Space>)>, Integer, Hash)>] Response<(Array<Space>)> data, response status code and response headers
|
|
327
329
|
def spaces_list_with_http_info(account_id, opts = {})
|
|
328
330
|
if @api_client.config.debugging
|
|
@@ -339,6 +341,7 @@ module Phrase
|
|
|
339
341
|
query_params = opts[:query_params] || {}
|
|
340
342
|
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
341
343
|
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
344
|
+
query_params[:'q'] = opts[:'q'] if !opts[:'q'].nil?
|
|
342
345
|
|
|
343
346
|
# header parameters
|
|
344
347
|
header_params = opts[:header_params] || {}
|
|
@@ -2,7 +2,7 @@ require 'date'
|
|
|
2
2
|
|
|
3
3
|
module Phrase
|
|
4
4
|
class MachineTranslationSettingsUpdateParameters
|
|
5
|
-
# The machine translation engine to use as the account default. Supported values: language_ai_translate, aita_translate, microsoft_translate, google_translate, amazon_translate
|
|
5
|
+
# The machine translation engine to use as the account default. Supported values: language_ai_translate, aita_translate, microsoft_translate, google_translate, amazon_translate. Pass null or an empty string to reset to the plan default.
|
|
6
6
|
attr_accessor :default_service
|
|
7
7
|
|
|
8
8
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
@@ -11,10 +11,10 @@ module Phrase
|
|
|
11
11
|
# List of project ids the user has access to.
|
|
12
12
|
attr_accessor :project_ids
|
|
13
13
|
|
|
14
|
-
# List of locale ids the user has access to.
|
|
14
|
+
# List of locale ids the user has access to. This is project-scoped and must be paired with `project_ids` (and `strategy`) to take effect; it does not grant account-wide language access.
|
|
15
15
|
attr_accessor :locale_ids
|
|
16
16
|
|
|
17
|
-
# List of default locales for the user.
|
|
17
|
+
# List of default locales for the user, applied across all of the user's projects. This is the account-level field corresponding to \"Language access\" in the translator profile UI.
|
|
18
18
|
attr_accessor :default_locale_codes
|
|
19
19
|
|
|
20
20
|
# List of spaces the user is assigned to.
|
|
@@ -104,7 +104,7 @@ module Phrase
|
|
|
104
104
|
# (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.
|
|
105
105
|
attr_accessor :default_encoding
|
|
106
106
|
|
|
107
|
-
# (Optional) CLDR plural-rule version used by the project.
|
|
107
|
+
# (Optional) CLDR plural-rule version used by the project. Pass `legacy` for pre-CLDR pluralization behaviour, or a CLDR version string such as `cldr48`. Also used as the default version for the ICU skeleton endpoint (`POST /icu/skeleton`) when its own `cldr_version` parameter is omitted.
|
|
108
108
|
attr_accessor :cldr_version
|
|
109
109
|
|
|
110
110
|
# (Optional) List of placeholder styles enabled for the project.
|
|
@@ -403,11 +403,23 @@ module Phrase
|
|
|
403
403
|
# @return true if the model is valid
|
|
404
404
|
def valid?
|
|
405
405
|
return false if @name.nil?
|
|
406
|
+
translation_keys_sort_collation_validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
407
|
+
return false unless translation_keys_sort_collation_validator.valid?(@translation_keys_sort_collation)
|
|
406
408
|
default_encoding_validator = EnumAttributeValidator.new('String', ["UTF-8", "UTF-16", "UTF-16BE", "UTF-16LE", "ISO-8859-1"])
|
|
407
409
|
return false unless default_encoding_validator.valid?(@default_encoding)
|
|
408
410
|
true
|
|
409
411
|
end
|
|
410
412
|
|
|
413
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
414
|
+
# @param [Object] translation_keys_sort_collation Object to be assigned
|
|
415
|
+
def translation_keys_sort_collation=(translation_keys_sort_collation)
|
|
416
|
+
validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
417
|
+
unless validator.valid?(translation_keys_sort_collation)
|
|
418
|
+
fail ArgumentError, "invalid value for \"translation_keys_sort_collation\", must be one of #{validator.allowable_values}."
|
|
419
|
+
end
|
|
420
|
+
@translation_keys_sort_collation = translation_keys_sort_collation
|
|
421
|
+
end
|
|
422
|
+
|
|
411
423
|
# Custom attribute writer method checking allowed values (enum).
|
|
412
424
|
# @param [Object] default_encoding Object to be assigned
|
|
413
425
|
def default_encoding=(default_encoding)
|
|
@@ -62,12 +62,36 @@ module Phrase
|
|
|
62
62
|
|
|
63
63
|
attr_accessor :cldr_version
|
|
64
64
|
|
|
65
|
+
attr_accessor :translation_keys_sort_collation
|
|
66
|
+
|
|
65
67
|
attr_accessor :job_locking_enabled
|
|
66
68
|
|
|
67
69
|
attr_accessor :placeholder_styles
|
|
68
70
|
|
|
69
71
|
attr_accessor :branch
|
|
70
72
|
|
|
73
|
+
class EnumAttributeValidator
|
|
74
|
+
attr_reader :datatype
|
|
75
|
+
attr_reader :allowable_values
|
|
76
|
+
|
|
77
|
+
def initialize(datatype, allowable_values)
|
|
78
|
+
@allowable_values = allowable_values.map do |value|
|
|
79
|
+
case datatype.to_s
|
|
80
|
+
when /Integer/i
|
|
81
|
+
value.to_i
|
|
82
|
+
when /Float/i
|
|
83
|
+
value.to_f
|
|
84
|
+
else
|
|
85
|
+
value
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
def valid?(value)
|
|
91
|
+
!value || allowable_values.include?(value)
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
|
|
71
95
|
# Attribute mapping from ruby-style variable name to JSON key.
|
|
72
96
|
def self.attribute_map
|
|
73
97
|
{
|
|
@@ -101,6 +125,7 @@ module Phrase
|
|
|
101
125
|
:'autocomplete_job_enabled' => :'autocomplete_job_enabled',
|
|
102
126
|
:'default_encoding' => :'default_encoding',
|
|
103
127
|
:'cldr_version' => :'cldr_version',
|
|
128
|
+
:'translation_keys_sort_collation' => :'translation_keys_sort_collation',
|
|
104
129
|
:'job_locking_enabled' => :'job_locking_enabled',
|
|
105
130
|
:'placeholder_styles' => :'placeholder_styles',
|
|
106
131
|
:'branch' => :'branch'
|
|
@@ -140,6 +165,7 @@ module Phrase
|
|
|
140
165
|
:'autocomplete_job_enabled' => :'Boolean',
|
|
141
166
|
:'default_encoding' => :'String',
|
|
142
167
|
:'cldr_version' => :'String',
|
|
168
|
+
:'translation_keys_sort_collation' => :'String',
|
|
143
169
|
:'job_locking_enabled' => :'Boolean',
|
|
144
170
|
:'placeholder_styles' => :'Array<String>',
|
|
145
171
|
:'branch' => :'Branch'
|
|
@@ -294,6 +320,10 @@ module Phrase
|
|
|
294
320
|
self.cldr_version = attributes[:'cldr_version']
|
|
295
321
|
end
|
|
296
322
|
|
|
323
|
+
if attributes.key?(:'translation_keys_sort_collation')
|
|
324
|
+
self.translation_keys_sort_collation = attributes[:'translation_keys_sort_collation']
|
|
325
|
+
end
|
|
326
|
+
|
|
297
327
|
if attributes.key?(:'job_locking_enabled')
|
|
298
328
|
self.job_locking_enabled = attributes[:'job_locking_enabled']
|
|
299
329
|
end
|
|
@@ -319,9 +349,21 @@ module Phrase
|
|
|
319
349
|
# Check to see if the all the properties in the model are valid
|
|
320
350
|
# @return true if the model is valid
|
|
321
351
|
def valid?
|
|
352
|
+
translation_keys_sort_collation_validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
353
|
+
return false unless translation_keys_sort_collation_validator.valid?(@translation_keys_sort_collation)
|
|
322
354
|
true
|
|
323
355
|
end
|
|
324
356
|
|
|
357
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
358
|
+
# @param [Object] translation_keys_sort_collation Object to be assigned
|
|
359
|
+
def translation_keys_sort_collation=(translation_keys_sort_collation)
|
|
360
|
+
validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
361
|
+
unless validator.valid?(translation_keys_sort_collation)
|
|
362
|
+
fail ArgumentError, "invalid value for \"translation_keys_sort_collation\", must be one of #{validator.allowable_values}."
|
|
363
|
+
end
|
|
364
|
+
@translation_keys_sort_collation = translation_keys_sort_collation
|
|
365
|
+
end
|
|
366
|
+
|
|
325
367
|
# Checks equality by comparing each attribute.
|
|
326
368
|
# @param [Object] Object to be compared
|
|
327
369
|
def ==(o)
|
|
@@ -357,6 +399,7 @@ module Phrase
|
|
|
357
399
|
autocomplete_job_enabled == o.autocomplete_job_enabled &&
|
|
358
400
|
default_encoding == o.default_encoding &&
|
|
359
401
|
cldr_version == o.cldr_version &&
|
|
402
|
+
translation_keys_sort_collation == o.translation_keys_sort_collation &&
|
|
360
403
|
job_locking_enabled == o.job_locking_enabled &&
|
|
361
404
|
placeholder_styles == o.placeholder_styles &&
|
|
362
405
|
branch == o.branch
|
|
@@ -371,7 +414,7 @@ module Phrase
|
|
|
371
414
|
# Calculates hash code according to all attributes.
|
|
372
415
|
# @return [Integer] Hash code
|
|
373
416
|
def hash
|
|
374
|
-
[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, fallback_for_unverified_translations, autocomplete_job_enabled, default_encoding, cldr_version, job_locking_enabled, placeholder_styles, branch].hash
|
|
417
|
+
[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, fallback_for_unverified_translations, autocomplete_job_enabled, default_encoding, cldr_version, translation_keys_sort_collation, job_locking_enabled, placeholder_styles, branch].hash
|
|
375
418
|
end
|
|
376
419
|
|
|
377
420
|
# Builds the object from hash
|
|
@@ -104,7 +104,7 @@ module Phrase
|
|
|
104
104
|
# (Optional) Collation used when sorting translation keys alphabetically.
|
|
105
105
|
attr_accessor :translation_keys_sort_collation
|
|
106
106
|
|
|
107
|
-
# (Optional) CLDR plural-rule version used by the project.
|
|
107
|
+
# (Optional) CLDR plural-rule version used by the project. Pass `legacy` for pre-CLDR pluralization behaviour, or a CLDR version string such as `cldr48`. Also used as the default version for the ICU skeleton endpoint (`POST /icu/skeleton`) when its own `cldr_version` parameter is omitted.
|
|
108
108
|
attr_accessor :cldr_version
|
|
109
109
|
|
|
110
110
|
class EnumAttributeValidator
|
|
@@ -391,6 +391,8 @@ module Phrase
|
|
|
391
391
|
def valid?
|
|
392
392
|
default_encoding_validator = EnumAttributeValidator.new('String', ["UTF-8", "UTF-16", "UTF-16BE", "UTF-16LE", "ISO-8859-1"])
|
|
393
393
|
return false unless default_encoding_validator.valid?(@default_encoding)
|
|
394
|
+
translation_keys_sort_collation_validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
395
|
+
return false unless translation_keys_sort_collation_validator.valid?(@translation_keys_sort_collation)
|
|
394
396
|
true
|
|
395
397
|
end
|
|
396
398
|
|
|
@@ -404,6 +406,16 @@ module Phrase
|
|
|
404
406
|
@default_encoding = default_encoding
|
|
405
407
|
end
|
|
406
408
|
|
|
409
|
+
# Custom attribute writer method checking allowed values (enum).
|
|
410
|
+
# @param [Object] translation_keys_sort_collation Object to be assigned
|
|
411
|
+
def translation_keys_sort_collation=(translation_keys_sort_collation)
|
|
412
|
+
validator = EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
413
|
+
unless validator.valid?(translation_keys_sort_collation)
|
|
414
|
+
fail ArgumentError, "invalid value for \"translation_keys_sort_collation\", must be one of #{validator.allowable_values}."
|
|
415
|
+
end
|
|
416
|
+
@translation_keys_sort_collation = translation_keys_sort_collation
|
|
417
|
+
end
|
|
418
|
+
|
|
407
419
|
# Checks equality by comparing each attribute.
|
|
408
420
|
# @param [Object] Object to be compared
|
|
409
421
|
def ==(o)
|
data/lib/phrase/version.rb
CHANGED
|
@@ -50,7 +50,7 @@ describe 'MembersApi' do
|
|
|
50
50
|
|
|
51
51
|
# unit tests for member_update
|
|
52
52
|
# Update a member
|
|
53
|
-
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. Access token scope must include `team.manage`.
|
|
53
|
+
# Update user permissions in the account. Developers and translators need `project_ids` and `locale_ids` assigned to access them. To grant account-wide language access instead of access scoped to specific projects, use `default_locale_codes`. Access token scope must include `team.manage`.
|
|
54
54
|
# @param account_id Account ID
|
|
55
55
|
# @param id ID
|
|
56
56
|
# @param member_update_parameters
|
|
@@ -61,7 +61,7 @@ describe 'ProjectsApi' do
|
|
|
61
61
|
|
|
62
62
|
# unit tests for project_update
|
|
63
63
|
# Update a project
|
|
64
|
-
# Update an existing project.
|
|
64
|
+
# Update an existing project, including its review workflow, pre-translation/autotranslate rules, and machine-translation configuration (see workflow, machine_translation_enabled, and the autotranslate_* fields below).
|
|
65
65
|
# @param id ID
|
|
66
66
|
# @param project_update_parameters
|
|
67
67
|
# @param [Hash] opts the optional parameters
|
data/spec/api/spaces_api_spec.rb
CHANGED
|
@@ -85,6 +85,7 @@ describe 'SpacesApi' do
|
|
|
85
85
|
# @option opts [String] :x_phrase_app_otp Two-Factor-Authentication token (optional)
|
|
86
86
|
# @option opts [Integer] :page Page number
|
|
87
87
|
# @option opts [Integer] :per_page Limit on the number of objects to be returned, between 1 and 100. 25 by default
|
|
88
|
+
# @option opts [String] :q Filter results by name. Supports the prefix-match syntax `name:<value>`, which returns only spaces whose names begin with `<value>`. Other query formats are ignored; omitting `q` returns all accessible spaces.
|
|
88
89
|
# @return [Array<Space>]
|
|
89
90
|
describe 'spaces_list test' do
|
|
90
91
|
it 'should work' do
|
|
@@ -215,6 +215,10 @@ describe 'ProjectCreateParameters' do
|
|
|
215
215
|
describe 'test attribute "translation_keys_sort_collation"' do
|
|
216
216
|
it 'should work' do
|
|
217
217
|
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
218
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
219
|
+
# validator.allowable_values.each do |value|
|
|
220
|
+
# expect { @instance.translation_keys_sort_collation = value }.not_to raise_error
|
|
221
|
+
# end
|
|
218
222
|
end
|
|
219
223
|
end
|
|
220
224
|
|
|
@@ -200,6 +200,16 @@ describe 'ProjectDetails' do
|
|
|
200
200
|
end
|
|
201
201
|
end
|
|
202
202
|
|
|
203
|
+
describe 'test attribute "translation_keys_sort_collation"' do
|
|
204
|
+
it 'should work' do
|
|
205
|
+
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
206
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
207
|
+
# validator.allowable_values.each do |value|
|
|
208
|
+
# expect { @instance.translation_keys_sort_collation = value }.not_to raise_error
|
|
209
|
+
# end
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
|
|
203
213
|
describe 'test attribute "job_locking_enabled"' do
|
|
204
214
|
it 'should work' do
|
|
205
215
|
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
@@ -225,6 +225,10 @@ describe 'ProjectUpdateParameters' do
|
|
|
225
225
|
describe 'test attribute "translation_keys_sort_collation"' do
|
|
226
226
|
it 'should work' do
|
|
227
227
|
# assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
|
|
228
|
+
# validator = Petstore::EnumTest::EnumAttributeValidator.new('String', ["general_ci", "unicode_ci"])
|
|
229
|
+
# validator.allowable_values.each do |value|
|
|
230
|
+
# expect { @instance.translation_keys_sort_collation = value }.not_to raise_error
|
|
231
|
+
# end
|
|
228
232
|
end
|
|
229
233
|
end
|
|
230
234
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: phrase
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.28.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Phrase
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-09-
|
|
11
|
+
date: 2026-09-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: typhoeus
|