phrase 2.12.0 → 2.13.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 +14 -0
- data/README.md +19 -13
- data/docs/CommentReaction.md +27 -0
- data/docs/CommentReactionsApi.md +287 -0
- data/docs/DistributionCreateParameters.md +1 -1
- data/docs/GitlabSyncHistory.md +2 -2
- data/docs/GitlabSyncHistoryErrors.md +19 -0
- data/docs/JobLocaleUpdateParameters.md +1 -1
- data/docs/JobLocalesApi.md +20 -20
- data/docs/JobLocalesCreateParameters.md +1 -1
- data/docs/LocalesApi.md +2 -2
- data/docs/SpacesApi.md +9 -9
- data/docs/TeamsApi.md +6 -6
- data/docs/UploadCreateParameters.md +1 -1
- data/docs/UploadsApi.md +2 -2
- data/lib/phrase/api/comment_reactions_api.rb +350 -0
- data/lib/phrase/api/job_locales_api.rb +20 -20
- data/lib/phrase/api/locales_api.rb +2 -2
- data/lib/phrase/api/spaces_api.rb +6 -6
- data/lib/phrase/api/teams_api.rb +4 -4
- data/lib/phrase/api/uploads_api.rb +2 -2
- data/lib/phrase/models/comment_reaction.rb +239 -0
- data/lib/phrase/models/distribution_create_parameters.rb +1 -1
- data/lib/phrase/models/gitlab_sync_history.rb +2 -2
- data/lib/phrase/models/gitlab_sync_history_errors.rb +203 -0
- data/lib/phrase/models/job_locale_update_parameters.rb +1 -1
- data/lib/phrase/models/job_locales_create_parameters.rb +1 -1
- data/lib/phrase/models/upload_create_parameters.rb +1 -1
- data/lib/phrase/version.rb +1 -1
- data/lib/phrase.rb +3 -0
- data/spec/api/comment_reactions_api_spec.rb +91 -0
- data/spec/api/job_locales_api_spec.rb +10 -10
- data/spec/api/locales_api_spec.rb +1 -1
- data/spec/api/spaces_api_spec.rb +3 -3
- data/spec/api/teams_api_spec.rb +2 -2
- data/spec/api/uploads_api_spec.rb +1 -1
- data/spec/models/comment_reaction_spec.rb +59 -0
- data/spec/models/gitlab_sync_history_errors_spec.rb +35 -0
- metadata +224 -211
@@ -375,7 +375,7 @@ module Phrase
|
|
375
375
|
return response, status_code, headers
|
376
376
|
end
|
377
377
|
|
378
|
-
# Add Project
|
378
|
+
# Add Project to Space
|
379
379
|
# Adds an existing project to the space.
|
380
380
|
# @param account_id [String] Account ID
|
381
381
|
# @param space_id [String] Space ID
|
@@ -388,7 +388,7 @@ module Phrase
|
|
388
388
|
data
|
389
389
|
end
|
390
390
|
|
391
|
-
# Add Project
|
391
|
+
# Add Project to Space
|
392
392
|
# Adds an existing project to the space.
|
393
393
|
# @param account_id [String] Account ID
|
394
394
|
# @param space_id [String] Space ID
|
@@ -453,7 +453,7 @@ module Phrase
|
|
453
453
|
return response, status_code, headers
|
454
454
|
end
|
455
455
|
|
456
|
-
# Remove Project
|
456
|
+
# Remove Project from Space
|
457
457
|
# Removes a specified project from the specified space.
|
458
458
|
# @param account_id [String] Account ID
|
459
459
|
# @param space_id [String] Space ID
|
@@ -466,7 +466,7 @@ module Phrase
|
|
466
466
|
data
|
467
467
|
end
|
468
468
|
|
469
|
-
# Remove Project
|
469
|
+
# Remove Project from Space
|
470
470
|
# Removes a specified project from the specified space.
|
471
471
|
# @param account_id [String] Account ID
|
472
472
|
# @param space_id [String] Space ID
|
@@ -529,7 +529,7 @@ module Phrase
|
|
529
529
|
return response, status_code, headers
|
530
530
|
end
|
531
531
|
|
532
|
-
# List Projects
|
532
|
+
# List Projects in Space
|
533
533
|
# List all projects for the specified Space.
|
534
534
|
# @param account_id [String] Account ID
|
535
535
|
# @param space_id [String] Space ID
|
@@ -543,7 +543,7 @@ module Phrase
|
|
543
543
|
data
|
544
544
|
end
|
545
545
|
|
546
|
-
# List Projects
|
546
|
+
# List Projects in Space
|
547
547
|
# List all projects for the specified Space.
|
548
548
|
# @param account_id [String] Account ID
|
549
549
|
# @param space_id [String] Space ID
|
data/lib/phrase/api/teams_api.rb
CHANGED
@@ -375,7 +375,7 @@ module Phrase
|
|
375
375
|
return response, status_code, headers
|
376
376
|
end
|
377
377
|
|
378
|
-
# Add Project
|
378
|
+
# Add Project to Team
|
379
379
|
# Adds an existing project to the team.
|
380
380
|
# @param account_id [String] Account ID
|
381
381
|
# @param team_id [String] Team ID
|
@@ -388,7 +388,7 @@ module Phrase
|
|
388
388
|
data
|
389
389
|
end
|
390
390
|
|
391
|
-
# Add Project
|
391
|
+
# Add Project to Team
|
392
392
|
# Adds an existing project to the team.
|
393
393
|
# @param account_id [String] Account ID
|
394
394
|
# @param team_id [String] Team ID
|
@@ -453,7 +453,7 @@ module Phrase
|
|
453
453
|
return response, status_code, headers
|
454
454
|
end
|
455
455
|
|
456
|
-
# Remove Project
|
456
|
+
# Remove Project from Team
|
457
457
|
# Removes a specified project from the specified team.
|
458
458
|
# @param account_id [String] Account ID
|
459
459
|
# @param team_id [String] Team ID
|
@@ -466,7 +466,7 @@ module Phrase
|
|
466
466
|
data
|
467
467
|
end
|
468
468
|
|
469
|
-
# Remove Project
|
469
|
+
# Remove Project from Team
|
470
470
|
# Removes a specified project from the specified team.
|
471
471
|
# @param account_id [String] Account ID
|
472
472
|
# @param team_id [String] Team ID
|
@@ -26,7 +26,7 @@ module Phrase
|
|
26
26
|
# @option opts [Object] :locale_mapping Optional, format specific mapping between locale names and the columns the translations to those locales are contained in.
|
27
27
|
# @option opts [Object] :format_options Additional options available for specific formats. See our format guide for complete list.
|
28
28
|
# @option opts [Boolean] :autotranslate If set, translations for the uploaded language will be fetched automatically.
|
29
|
-
# @option opts [Boolean] :mark_reviewed Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow
|
29
|
+
# @option opts [Boolean] :mark_reviewed Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow is enabled for the project.
|
30
30
|
# @return [Upload]
|
31
31
|
def upload_create(project_id, opts = {})
|
32
32
|
data, _status_code, _headers = upload_create_with_http_info(project_id, opts)
|
@@ -52,7 +52,7 @@ module Phrase
|
|
52
52
|
# @option opts [Object] :locale_mapping Optional, format specific mapping between locale names and the columns the translations to those locales are contained in.
|
53
53
|
# @option opts [Object] :format_options Additional options available for specific formats. See our format guide for complete list.
|
54
54
|
# @option opts [Boolean] :autotranslate If set, translations for the uploaded language will be fetched automatically.
|
55
|
-
# @option opts [Boolean] :mark_reviewed Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow
|
55
|
+
# @option opts [Boolean] :mark_reviewed Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow is enabled for the project.
|
56
56
|
# @return [Array<(Response<(Upload)>, Integer, Hash)>] Response<(Upload)> data, response status code and response headers
|
57
57
|
def upload_create_with_http_info(project_id, opts = {})
|
58
58
|
if @api_client.config.debugging
|
@@ -0,0 +1,239 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
module Phrase
|
4
|
+
class CommentReaction
|
5
|
+
attr_accessor :id
|
6
|
+
|
7
|
+
attr_accessor :emoji
|
8
|
+
|
9
|
+
attr_accessor :created_at
|
10
|
+
|
11
|
+
attr_accessor :updated_at
|
12
|
+
|
13
|
+
attr_accessor :comment
|
14
|
+
|
15
|
+
attr_accessor :user
|
16
|
+
|
17
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
18
|
+
def self.attribute_map
|
19
|
+
{
|
20
|
+
:'id' => :'id',
|
21
|
+
:'emoji' => :'emoji',
|
22
|
+
:'created_at' => :'created_at',
|
23
|
+
:'updated_at' => :'updated_at',
|
24
|
+
:'comment' => :'comment',
|
25
|
+
:'user' => :'user'
|
26
|
+
}
|
27
|
+
end
|
28
|
+
|
29
|
+
# Attribute type mapping.
|
30
|
+
def self.openapi_types
|
31
|
+
{
|
32
|
+
:'id' => :'String',
|
33
|
+
:'emoji' => :'String',
|
34
|
+
:'created_at' => :'DateTime',
|
35
|
+
:'updated_at' => :'DateTime',
|
36
|
+
:'comment' => :'Comment',
|
37
|
+
:'user' => :'UserPreview'
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
41
|
+
# List of attributes with nullable: true
|
42
|
+
def self.openapi_nullable
|
43
|
+
Set.new([
|
44
|
+
])
|
45
|
+
end
|
46
|
+
|
47
|
+
# Initializes the object
|
48
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
49
|
+
def initialize(attributes = {})
|
50
|
+
if (!attributes.is_a?(Hash))
|
51
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Phrase::CommentReaction` initialize method"
|
52
|
+
end
|
53
|
+
|
54
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
55
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
56
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
57
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Phrase::CommentReaction`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
58
|
+
end
|
59
|
+
h[k.to_sym] = v
|
60
|
+
}
|
61
|
+
|
62
|
+
if attributes.key?(:'id')
|
63
|
+
self.id = attributes[:'id']
|
64
|
+
end
|
65
|
+
|
66
|
+
if attributes.key?(:'emoji')
|
67
|
+
self.emoji = attributes[:'emoji']
|
68
|
+
end
|
69
|
+
|
70
|
+
if attributes.key?(:'created_at')
|
71
|
+
self.created_at = attributes[:'created_at']
|
72
|
+
end
|
73
|
+
|
74
|
+
if attributes.key?(:'updated_at')
|
75
|
+
self.updated_at = attributes[:'updated_at']
|
76
|
+
end
|
77
|
+
|
78
|
+
if attributes.key?(:'comment')
|
79
|
+
self.comment = attributes[:'comment']
|
80
|
+
end
|
81
|
+
|
82
|
+
if attributes.key?(:'user')
|
83
|
+
self.user = attributes[:'user']
|
84
|
+
end
|
85
|
+
end
|
86
|
+
|
87
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
88
|
+
# @return Array for valid properties with the reasons
|
89
|
+
def list_invalid_properties
|
90
|
+
invalid_properties = Array.new
|
91
|
+
invalid_properties
|
92
|
+
end
|
93
|
+
|
94
|
+
# Check to see if the all the properties in the model are valid
|
95
|
+
# @return true if the model is valid
|
96
|
+
def valid?
|
97
|
+
true
|
98
|
+
end
|
99
|
+
|
100
|
+
# Checks equality by comparing each attribute.
|
101
|
+
# @param [Object] Object to be compared
|
102
|
+
def ==(o)
|
103
|
+
return true if self.equal?(o)
|
104
|
+
self.class == o.class &&
|
105
|
+
id == o.id &&
|
106
|
+
emoji == o.emoji &&
|
107
|
+
created_at == o.created_at &&
|
108
|
+
updated_at == o.updated_at &&
|
109
|
+
comment == o.comment &&
|
110
|
+
user == o.user
|
111
|
+
end
|
112
|
+
|
113
|
+
# @see the `==` method
|
114
|
+
# @param [Object] Object to be compared
|
115
|
+
def eql?(o)
|
116
|
+
self == o
|
117
|
+
end
|
118
|
+
|
119
|
+
# Calculates hash code according to all attributes.
|
120
|
+
# @return [Integer] Hash code
|
121
|
+
def hash
|
122
|
+
[id, emoji, created_at, updated_at, comment, user].hash
|
123
|
+
end
|
124
|
+
|
125
|
+
# Builds the object from hash
|
126
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
127
|
+
# @return [Object] Returns the model itself
|
128
|
+
def self.build_from_hash(attributes)
|
129
|
+
new.build_from_hash(attributes)
|
130
|
+
end
|
131
|
+
|
132
|
+
# Builds the object from hash
|
133
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
134
|
+
# @return [Object] Returns the model itself
|
135
|
+
def build_from_hash(attributes)
|
136
|
+
return nil unless attributes.is_a?(Hash)
|
137
|
+
self.class.openapi_types.each_pair do |key, type|
|
138
|
+
if type =~ /\AArray<(.*)>/i
|
139
|
+
# check to ensure the input is an array given that the attribute
|
140
|
+
# is documented as an array but the input is not
|
141
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
142
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
143
|
+
end
|
144
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
145
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
146
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
147
|
+
end
|
148
|
+
|
149
|
+
self
|
150
|
+
end
|
151
|
+
|
152
|
+
# Deserializes the data based on type
|
153
|
+
# @param string type Data type
|
154
|
+
# @param string value Value to be deserialized
|
155
|
+
# @return [Object] Deserialized data
|
156
|
+
def _deserialize(type, value)
|
157
|
+
case type.to_sym
|
158
|
+
when :DateTime
|
159
|
+
DateTime.parse(value)
|
160
|
+
when :Date
|
161
|
+
Date.parse(value)
|
162
|
+
when :String
|
163
|
+
value.to_s
|
164
|
+
when :Integer
|
165
|
+
value.to_i
|
166
|
+
when :Float
|
167
|
+
value.to_f
|
168
|
+
when :Boolean
|
169
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
170
|
+
true
|
171
|
+
else
|
172
|
+
false
|
173
|
+
end
|
174
|
+
when :Object
|
175
|
+
# generic object (usually a Hash), return directly
|
176
|
+
value
|
177
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
178
|
+
inner_type = Regexp.last_match[:inner_type]
|
179
|
+
value.map { |v| _deserialize(inner_type, v) }
|
180
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
181
|
+
k_type = Regexp.last_match[:k_type]
|
182
|
+
v_type = Regexp.last_match[:v_type]
|
183
|
+
{}.tap do |hash|
|
184
|
+
value.each do |k, v|
|
185
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
186
|
+
end
|
187
|
+
end
|
188
|
+
else # model
|
189
|
+
Phrase.const_get(type).build_from_hash(value)
|
190
|
+
end
|
191
|
+
end
|
192
|
+
|
193
|
+
# Returns the string representation of the object
|
194
|
+
# @return [String] String presentation of the object
|
195
|
+
def to_s
|
196
|
+
to_hash.to_s
|
197
|
+
end
|
198
|
+
|
199
|
+
# to_body is an alias to to_hash (backward compatibility)
|
200
|
+
# @return [Hash] Returns the object in the form of hash
|
201
|
+
def to_body
|
202
|
+
to_hash
|
203
|
+
end
|
204
|
+
|
205
|
+
# Returns the object in the form of hash
|
206
|
+
# @return [Hash] Returns the object in the form of hash
|
207
|
+
def to_hash
|
208
|
+
hash = {}
|
209
|
+
self.class.attribute_map.each_pair do |attr, param|
|
210
|
+
value = self.send(attr)
|
211
|
+
if value.nil?
|
212
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
213
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
214
|
+
end
|
215
|
+
|
216
|
+
hash[param] = _to_hash(value)
|
217
|
+
end
|
218
|
+
hash
|
219
|
+
end
|
220
|
+
|
221
|
+
# Outputs non-array value in the form of hash
|
222
|
+
# For object, use to_hash. Otherwise, just return the value
|
223
|
+
# @param [Object] value Any valid value
|
224
|
+
# @return [Hash] Returns the value in the form of hash
|
225
|
+
def _to_hash(value)
|
226
|
+
if value.is_a?(Array)
|
227
|
+
value.compact.map { |v| _to_hash(v) }
|
228
|
+
elsif value.is_a?(Hash)
|
229
|
+
{}.tap do |hash|
|
230
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
231
|
+
end
|
232
|
+
elsif value.respond_to? :to_hash
|
233
|
+
value.to_hash
|
234
|
+
else
|
235
|
+
value
|
236
|
+
end
|
237
|
+
end
|
238
|
+
end
|
239
|
+
end
|
@@ -8,7 +8,7 @@ module Phrase
|
|
8
8
|
# Project id the distribution should be assigned to.
|
9
9
|
attr_accessor :project_id
|
10
10
|
|
11
|
-
# List of platforms the distribution should support.
|
11
|
+
# List of platforms the distribution should support. Valid values are: * `android` * `ios` * `flutter` * `i18next`
|
12
12
|
attr_accessor :platforms
|
13
13
|
|
14
14
|
# List of locale ids that will be part of distribution releases
|
@@ -26,9 +26,9 @@ module Phrase
|
|
26
26
|
# Attribute type mapping.
|
27
27
|
def self.openapi_types
|
28
28
|
{
|
29
|
-
:'status' => :'
|
29
|
+
:'status' => :'String',
|
30
30
|
:'action' => :'String',
|
31
|
-
:'errors' => :'Array<
|
31
|
+
:'errors' => :'Array<GitlabSyncHistoryErrors>',
|
32
32
|
:'date' => :'DateTime',
|
33
33
|
:'details' => :'Object'
|
34
34
|
}
|
@@ -0,0 +1,203 @@
|
|
1
|
+
require 'date'
|
2
|
+
|
3
|
+
module Phrase
|
4
|
+
class GitlabSyncHistoryErrors
|
5
|
+
attr_accessor :error
|
6
|
+
|
7
|
+
attr_accessor :message
|
8
|
+
|
9
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
10
|
+
def self.attribute_map
|
11
|
+
{
|
12
|
+
:'error' => :'error',
|
13
|
+
:'message' => :'message'
|
14
|
+
}
|
15
|
+
end
|
16
|
+
|
17
|
+
# Attribute type mapping.
|
18
|
+
def self.openapi_types
|
19
|
+
{
|
20
|
+
:'error' => :'String',
|
21
|
+
:'message' => :'String'
|
22
|
+
}
|
23
|
+
end
|
24
|
+
|
25
|
+
# List of attributes with nullable: true
|
26
|
+
def self.openapi_nullable
|
27
|
+
Set.new([
|
28
|
+
])
|
29
|
+
end
|
30
|
+
|
31
|
+
# Initializes the object
|
32
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
33
|
+
def initialize(attributes = {})
|
34
|
+
if (!attributes.is_a?(Hash))
|
35
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `Phrase::GitlabSyncHistoryErrors` initialize method"
|
36
|
+
end
|
37
|
+
|
38
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
39
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
40
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
41
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `Phrase::GitlabSyncHistoryErrors`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
42
|
+
end
|
43
|
+
h[k.to_sym] = v
|
44
|
+
}
|
45
|
+
|
46
|
+
if attributes.key?(:'error')
|
47
|
+
self.error = attributes[:'error']
|
48
|
+
end
|
49
|
+
|
50
|
+
if attributes.key?(:'message')
|
51
|
+
self.message = attributes[:'message']
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
56
|
+
# @return Array for valid properties with the reasons
|
57
|
+
def list_invalid_properties
|
58
|
+
invalid_properties = Array.new
|
59
|
+
invalid_properties
|
60
|
+
end
|
61
|
+
|
62
|
+
# Check to see if the all the properties in the model are valid
|
63
|
+
# @return true if the model is valid
|
64
|
+
def valid?
|
65
|
+
true
|
66
|
+
end
|
67
|
+
|
68
|
+
# Checks equality by comparing each attribute.
|
69
|
+
# @param [Object] Object to be compared
|
70
|
+
def ==(o)
|
71
|
+
return true if self.equal?(o)
|
72
|
+
self.class == o.class &&
|
73
|
+
error == o.error &&
|
74
|
+
message == o.message
|
75
|
+
end
|
76
|
+
|
77
|
+
# @see the `==` method
|
78
|
+
# @param [Object] Object to be compared
|
79
|
+
def eql?(o)
|
80
|
+
self == o
|
81
|
+
end
|
82
|
+
|
83
|
+
# Calculates hash code according to all attributes.
|
84
|
+
# @return [Integer] Hash code
|
85
|
+
def hash
|
86
|
+
[error, message].hash
|
87
|
+
end
|
88
|
+
|
89
|
+
# Builds the object from hash
|
90
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
91
|
+
# @return [Object] Returns the model itself
|
92
|
+
def self.build_from_hash(attributes)
|
93
|
+
new.build_from_hash(attributes)
|
94
|
+
end
|
95
|
+
|
96
|
+
# Builds the object from hash
|
97
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
98
|
+
# @return [Object] Returns the model itself
|
99
|
+
def build_from_hash(attributes)
|
100
|
+
return nil unless attributes.is_a?(Hash)
|
101
|
+
self.class.openapi_types.each_pair do |key, type|
|
102
|
+
if type =~ /\AArray<(.*)>/i
|
103
|
+
# check to ensure the input is an array given that the attribute
|
104
|
+
# is documented as an array but the input is not
|
105
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
106
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
107
|
+
end
|
108
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
109
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
110
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
111
|
+
end
|
112
|
+
|
113
|
+
self
|
114
|
+
end
|
115
|
+
|
116
|
+
# Deserializes the data based on type
|
117
|
+
# @param string type Data type
|
118
|
+
# @param string value Value to be deserialized
|
119
|
+
# @return [Object] Deserialized data
|
120
|
+
def _deserialize(type, value)
|
121
|
+
case type.to_sym
|
122
|
+
when :DateTime
|
123
|
+
DateTime.parse(value)
|
124
|
+
when :Date
|
125
|
+
Date.parse(value)
|
126
|
+
when :String
|
127
|
+
value.to_s
|
128
|
+
when :Integer
|
129
|
+
value.to_i
|
130
|
+
when :Float
|
131
|
+
value.to_f
|
132
|
+
when :Boolean
|
133
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
134
|
+
true
|
135
|
+
else
|
136
|
+
false
|
137
|
+
end
|
138
|
+
when :Object
|
139
|
+
# generic object (usually a Hash), return directly
|
140
|
+
value
|
141
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
142
|
+
inner_type = Regexp.last_match[:inner_type]
|
143
|
+
value.map { |v| _deserialize(inner_type, v) }
|
144
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
145
|
+
k_type = Regexp.last_match[:k_type]
|
146
|
+
v_type = Regexp.last_match[:v_type]
|
147
|
+
{}.tap do |hash|
|
148
|
+
value.each do |k, v|
|
149
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
150
|
+
end
|
151
|
+
end
|
152
|
+
else # model
|
153
|
+
Phrase.const_get(type).build_from_hash(value)
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
# Returns the string representation of the object
|
158
|
+
# @return [String] String presentation of the object
|
159
|
+
def to_s
|
160
|
+
to_hash.to_s
|
161
|
+
end
|
162
|
+
|
163
|
+
# to_body is an alias to to_hash (backward compatibility)
|
164
|
+
# @return [Hash] Returns the object in the form of hash
|
165
|
+
def to_body
|
166
|
+
to_hash
|
167
|
+
end
|
168
|
+
|
169
|
+
# Returns the object in the form of hash
|
170
|
+
# @return [Hash] Returns the object in the form of hash
|
171
|
+
def to_hash
|
172
|
+
hash = {}
|
173
|
+
self.class.attribute_map.each_pair do |attr, param|
|
174
|
+
value = self.send(attr)
|
175
|
+
if value.nil?
|
176
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
177
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
178
|
+
end
|
179
|
+
|
180
|
+
hash[param] = _to_hash(value)
|
181
|
+
end
|
182
|
+
hash
|
183
|
+
end
|
184
|
+
|
185
|
+
# Outputs non-array value in the form of hash
|
186
|
+
# For object, use to_hash. Otherwise, just return the value
|
187
|
+
# @param [Object] value Any valid value
|
188
|
+
# @return [Hash] Returns the value in the form of hash
|
189
|
+
def _to_hash(value)
|
190
|
+
if value.is_a?(Array)
|
191
|
+
value.compact.map { |v| _to_hash(v) }
|
192
|
+
elsif value.is_a?(Hash)
|
193
|
+
{}.tap do |hash|
|
194
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
195
|
+
end
|
196
|
+
elsif value.respond_to? :to_hash
|
197
|
+
value.to_hash
|
198
|
+
else
|
199
|
+
value
|
200
|
+
end
|
201
|
+
end
|
202
|
+
end
|
203
|
+
end
|
@@ -44,7 +44,7 @@ module Phrase
|
|
44
44
|
# If set, translations for the uploaded language will be fetched automatically.
|
45
45
|
attr_accessor :autotranslate
|
46
46
|
|
47
|
-
# Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow
|
47
|
+
# Indicated whether the imported translations should be marked as reviewed. This setting is available if the review workflow is enabled for the project.
|
48
48
|
attr_accessor :mark_reviewed
|
49
49
|
|
50
50
|
# Attribute mapping from ruby-style variable name to JSON key.
|
data/lib/phrase/version.rb
CHANGED
data/lib/phrase.rb
CHANGED
@@ -34,6 +34,7 @@ require 'phrase/models/branch_update_parameters'
|
|
34
34
|
require 'phrase/models/comment'
|
35
35
|
require 'phrase/models/comment_create_parameters'
|
36
36
|
require 'phrase/models/comment_mark_read_parameters'
|
37
|
+
require 'phrase/models/comment_reaction'
|
37
38
|
require 'phrase/models/comment_update_parameters'
|
38
39
|
require 'phrase/models/current_user'
|
39
40
|
require 'phrase/models/distribution'
|
@@ -48,6 +49,7 @@ require 'phrase/models/gitlab_sync'
|
|
48
49
|
require 'phrase/models/gitlab_sync_export'
|
49
50
|
require 'phrase/models/gitlab_sync_export_parameters'
|
50
51
|
require 'phrase/models/gitlab_sync_history'
|
52
|
+
require 'phrase/models/gitlab_sync_history_errors'
|
51
53
|
require 'phrase/models/gitlab_sync_import_parameters'
|
52
54
|
require 'phrase/models/glossary'
|
53
55
|
require 'phrase/models/glossary_create_parameters'
|
@@ -217,6 +219,7 @@ require 'phrase/api/authorizations_api'
|
|
217
219
|
require 'phrase/api/bitbucket_sync_api'
|
218
220
|
require 'phrase/api/blacklisted_keys_api'
|
219
221
|
require 'phrase/api/branches_api'
|
222
|
+
require 'phrase/api/comment_reactions_api'
|
220
223
|
require 'phrase/api/comments_api'
|
221
224
|
require 'phrase/api/distributions_api'
|
222
225
|
require 'phrase/api/documents_api'
|