babel_i18n 0.0.2 → 0.0.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c77daf5b74409c592f0f16b9263e5c0c96b726d3
4
- data.tar.gz: a2c067a45f61ffc270332ab06764a7d162686690
3
+ metadata.gz: 3174ae33ffc4a431c6163a7138938bc70d0b15b7
4
+ data.tar.gz: 358276607c09f1185af39c85405d3e6f2be42ca4
5
5
  SHA512:
6
- metadata.gz: 4cb194bebca13da6375b2e2321b9fa398f629e294ddc94a9b8f3765a9b4feb32ceb25c3e99dca1dc5abda50a42e91aedda667a3260a8f9963eb078ce90aa8c08
7
- data.tar.gz: 0f1f6780407ddc045764a68d1c41c41aa69f36e77d886d76aef68a95c889827b4bb36e21d3bb3c776eb71d062b75f6ee239ba360207feb7551240afd97a1ee97
6
+ metadata.gz: 6167562a8fb9c89e14018c795a8c0b1a180c57665a06c8a451e5b551848e17a18f2218243b204e2dba6ebf7d98691a8dee69b181bd403c93a9da8d25a6211f21
7
+ data.tar.gz: efc2933b3ef032383e23000391870f1d08cedbc8026579a2b1b3f01a9f9a32c0fe8037b5f21e0dd815752b7bae6ca7137a1a5db7c5dbc7155a04c1773498dca6
@@ -2,35 +2,41 @@ require 'yaml'
2
2
  module BabelI18n
3
3
  class Adapter
4
4
 
5
- attr_accessor :response, :from, :to, :key
5
+ attr_accessor :response, :from, :to, :key, :file_name
6
6
 
7
7
  def initialize(path, to, key)
8
8
  data = YAML::load_file(path)
9
9
  @from = BabelI18n::Adapter.get_language_by(data)
10
10
  @response = BabelI18n::Adapter.get_response(data)
11
+ @file_name = BabelI18n::Adapter.get_file_name(path, to)
11
12
  @to = to
12
13
  @key = key
13
14
  end
14
15
 
15
- def convert
16
- new_response = {}
17
- @response.each do |key, value|
16
+ def convert(response)
17
+ response.each do |key, value|
18
18
  convert(value) if value.is_a?(Hash)
19
- new_response[key] = BabelI18n::Base.new(value, @key).from(@from).to(@to).translate
19
+ if value.is_a?(String)
20
+ response[key] = BabelI18n::Base.new(value, @key).from(@from).to(@to).translate
21
+ end
20
22
  end
21
- new_response
22
23
  end
23
24
 
24
25
  def converted
25
- { @to => convert }
26
+ { @to => convert(@response) }
26
27
  end
27
28
 
28
29
  def write_file
29
- File.open("#{@to}.yml", "w") { |f| f.write converted.to_yaml }
30
+ File.open("#{@file_name}", "w") { |f| f.write converted.to_yaml }
30
31
  end
31
32
 
32
33
  protected
33
34
 
35
+ def self.get_file_name(path, to)
36
+ compost_name = path.split('/').last.split('.')
37
+ compost_name.size > 2 ? "#{compost_name.first}.#{to}.yml" : "#{to}.yml"
38
+ end
39
+
34
40
  def self.get_language_by(data)
35
41
  data.keys[0]
36
42
  end
@@ -1,3 +1,3 @@
1
1
  module BabelI18n
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/google/api.rb CHANGED
@@ -34,7 +34,16 @@ module Google
34
34
  url += "&target=#{target}" if target
35
35
  url += "&source=#{source}" if source
36
36
  url += "&key=#{key}"
37
- URI(url)
37
+ normalize_uri(url)
38
+ end
39
+
40
+ def normalize_uri(uri)
41
+ return uri if uri.is_a? URI
42
+
43
+ uri = uri.to_s
44
+ uri, *tail = uri.rpartition "#" if uri["#"]
45
+
46
+ URI(URI.encode(uri) << Array(tail).join)
38
47
  end
39
48
 
40
49
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: babel_i18n
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gabriel Pereira
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-25 00:00:00.000000000 Z
11
+ date: 2015-06-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler