phrase 0.4.17 → 0.4.18
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.
- data/Gemfile.lock +1 -1
- data/lib/phrase/api/client.rb +31 -0
- data/lib/phrase/formats/windows8_resource.rb +19 -0
- data/lib/phrase/formats.rb +2 -0
- data/lib/phrase/version.rb +1 -1
- metadata +74 -23
data/Gemfile.lock
CHANGED
data/lib/phrase/api/client.rb
CHANGED
@@ -12,6 +12,7 @@ class Phrase::Api::Client
|
|
12
12
|
METHOD_GET = :get
|
13
13
|
METHOD_POST = :post
|
14
14
|
METHOD_PUT = :put
|
15
|
+
METHOD_DELETE = :delete
|
15
16
|
|
16
17
|
attr_reader :auth_token
|
17
18
|
|
@@ -27,6 +28,11 @@ class Phrase::Api::Client
|
|
27
28
|
end
|
28
29
|
end
|
29
30
|
|
31
|
+
def fetch_translations(params = {})
|
32
|
+
result = perform_api_request("/translations", :get, params)
|
33
|
+
parsed(result)
|
34
|
+
end
|
35
|
+
|
30
36
|
def fetch_blacklisted_keys
|
31
37
|
result = perform_api_request("/blacklisted_keys", :get)
|
32
38
|
blacklisted_keys = []
|
@@ -48,6 +54,10 @@ class Phrase::Api::Client
|
|
48
54
|
parsed(perform_api_request("/translation_keys", :get, {:key_names => key_names}))
|
49
55
|
end
|
50
56
|
|
57
|
+
def fetch_translation_keys(opts = {})
|
58
|
+
parsed(perform_api_request("/translation_keys", :get, opts))
|
59
|
+
end
|
60
|
+
|
51
61
|
def create_locale(name)
|
52
62
|
raise "You must specify a name" if name.nil? or name.blank?
|
53
63
|
|
@@ -114,6 +124,16 @@ class Phrase::Api::Client
|
|
114
124
|
parsed(result)
|
115
125
|
end
|
116
126
|
|
127
|
+
def delete_translation_key(id)
|
128
|
+
result = perform_api_request("/translation_keys/#{id}", :delete)
|
129
|
+
parsed(result)['success'] == true
|
130
|
+
end
|
131
|
+
|
132
|
+
def delete_multiple_translation_keys(ids)
|
133
|
+
result = perform_api_request("/translation_keys/destroy_multiple", :delete, :'ids[]' => ids)
|
134
|
+
parsed(result)['success'] == true
|
135
|
+
end
|
136
|
+
|
117
137
|
private
|
118
138
|
def extract_structured_object(translation)
|
119
139
|
if translation.is_a?(Hash)
|
@@ -168,6 +188,8 @@ private
|
|
168
188
|
post_request(endpoint, params)
|
169
189
|
when METHOD_PUT
|
170
190
|
put_request(endpoint, params)
|
191
|
+
when METHOD_DELETE
|
192
|
+
delete_request(endpoint, params)
|
171
193
|
else
|
172
194
|
raise "Invalid Request Method: #{method}"
|
173
195
|
end
|
@@ -223,6 +245,15 @@ private
|
|
223
245
|
request
|
224
246
|
end
|
225
247
|
|
248
|
+
def delete_request(endpoint, params={})
|
249
|
+
request = Net::HTTP::Delete.new("#{api_path_for(endpoint)}")
|
250
|
+
params.merge!({
|
251
|
+
'auth_token' => @auth_token
|
252
|
+
})
|
253
|
+
set_form_data(request, params)
|
254
|
+
request
|
255
|
+
end
|
256
|
+
|
226
257
|
def api_path_for(endpoint)
|
227
258
|
"#{Phrase::Api::Config.api_path_prefix}#{endpoint}"
|
228
259
|
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
|
3
|
+
module Phrase
|
4
|
+
module Formats
|
5
|
+
class Windows8Resource < Phrase::Formats::ResxWindowsphone
|
6
|
+
def self.filename_for_locale(locale)
|
7
|
+
"phrase.#{locale.name}.resw"
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.locale_aware?
|
11
|
+
false
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.extensions
|
15
|
+
[:resw]
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/phrase/formats.rb
CHANGED
@@ -15,6 +15,7 @@ module Phrase
|
|
15
15
|
autoload :QtTranslationSource, 'phrase/formats/qt_translation_source'
|
16
16
|
autoload :Resx, 'phrase/formats/resx'
|
17
17
|
autoload :ResxWindowsphone, 'phrase/formats/resx_windowsphone'
|
18
|
+
autoload :Windows8Resource, 'phrase/formats/windows8_resource'
|
18
19
|
autoload :SimpleJson, 'phrase/formats/simple_json'
|
19
20
|
autoload :NodeJson, 'phrase/formats/node_json'
|
20
21
|
autoload :Strings, 'phrase/formats/strings'
|
@@ -78,6 +79,7 @@ module Phrase
|
|
78
79
|
ts: Phrase::Formats::QtTranslationSource,
|
79
80
|
resx: Phrase::Formats::Resx,
|
80
81
|
resx_windowsphone: Phrase::Formats::ResxWindowsphone,
|
82
|
+
windows8_resource: Phrase::Formats::Windows8Resource,
|
81
83
|
simple_json: Phrase::Formats::SimpleJson,
|
82
84
|
node_json: Phrase::Formats::NodeJson,
|
83
85
|
strings: Phrase::Formats::Strings,
|
data/lib/phrase/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: phrase
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.18
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2014-01-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: colorize
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: json
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ! '>='
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: '0'
|
33
38
|
type: :runtime
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: i18n
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,10 +53,15 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :runtime
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: rake
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
67
|
- - ! '>='
|
@@ -54,10 +69,15 @@ dependencies:
|
|
54
69
|
version: '0'
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: rspec
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,10 +85,15 @@ dependencies:
|
|
65
85
|
version: '0'
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
69
94
|
- !ruby/object:Gem::Dependency
|
70
95
|
name: webmock
|
71
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
72
97
|
none: false
|
73
98
|
requirements:
|
74
99
|
- - ! '>='
|
@@ -76,10 +101,15 @@ dependencies:
|
|
76
101
|
version: '0'
|
77
102
|
type: :development
|
78
103
|
prerelease: false
|
79
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
80
110
|
- !ruby/object:Gem::Dependency
|
81
111
|
name: vcr
|
82
|
-
requirement:
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
83
113
|
none: false
|
84
114
|
requirements:
|
85
115
|
- - ! '>='
|
@@ -87,10 +117,15 @@ dependencies:
|
|
87
117
|
version: '0'
|
88
118
|
type: :development
|
89
119
|
prerelease: false
|
90
|
-
version_requirements:
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
91
126
|
- !ruby/object:Gem::Dependency
|
92
127
|
name: timecop
|
93
|
-
requirement:
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
94
129
|
none: false
|
95
130
|
requirements:
|
96
131
|
- - ! '>='
|
@@ -98,10 +133,15 @@ dependencies:
|
|
98
133
|
version: '0'
|
99
134
|
type: :development
|
100
135
|
prerelease: false
|
101
|
-
version_requirements:
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '0'
|
102
142
|
- !ruby/object:Gem::Dependency
|
103
143
|
name: genspec
|
104
|
-
requirement:
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
105
145
|
none: false
|
106
146
|
requirements:
|
107
147
|
- - ! '>='
|
@@ -109,10 +149,15 @@ dependencies:
|
|
109
149
|
version: '0'
|
110
150
|
type: :development
|
111
151
|
prerelease: false
|
112
|
-
version_requirements:
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
113
158
|
- !ruby/object:Gem::Dependency
|
114
159
|
name: rails
|
115
|
-
requirement:
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
116
161
|
none: false
|
117
162
|
requirements:
|
118
163
|
- - ! '>='
|
@@ -120,7 +165,12 @@ dependencies:
|
|
120
165
|
version: '0'
|
121
166
|
type: :development
|
122
167
|
prerelease: false
|
123
|
-
version_requirements:
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - ! '>='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
124
174
|
description: phrase allows you to edit translations in-place on the page itself. More
|
125
175
|
information at phraseapp.com
|
126
176
|
email:
|
@@ -183,6 +233,7 @@ files:
|
|
183
233
|
- lib/phrase/formats/simple_json.rb
|
184
234
|
- lib/phrase/formats/strings.rb
|
185
235
|
- lib/phrase/formats/tmx.rb
|
236
|
+
- lib/phrase/formats/windows8_resource.rb
|
186
237
|
- lib/phrase/formats/xliff.rb
|
187
238
|
- lib/phrase/formats/xml.rb
|
188
239
|
- lib/phrase/formats/yaml.rb
|
@@ -226,7 +277,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
226
277
|
version: 1.3.6
|
227
278
|
requirements: []
|
228
279
|
rubyforge_project: phrase
|
229
|
-
rubygems_version: 1.8.
|
280
|
+
rubygems_version: 1.8.23
|
230
281
|
signing_key:
|
231
282
|
specification_version: 3
|
232
283
|
summary: The best way to manage i18n.
|