address-io 1.1 → 2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c8d1f0d8d062f43fb65c6a40527c0bf102c87c937b1640a8f69a4f53ee1149ad
4
- data.tar.gz: 9bcb1e1505cc3920abe243603b8b42e95a826c4a3ffd555ddcc202f56f8bdf46
3
+ metadata.gz: 333afb3c848a998950126757dc0f0a33d1c7d32630fb24b599a3eba4d9caa957
4
+ data.tar.gz: c141573ea9dc6893bf03d561c22418325c88ef98196d6497c4c47c56230df444
5
5
  SHA512:
6
- metadata.gz: 87092788d42151506fa7e4f05f8f9af6b4c9aef27fddc2f59269c0cd39fb0c90fe6f03be24d3008ae85db4a462e011ebbf52a23fde9fc0a1f99f132a3bcd25b8
7
- data.tar.gz: 334922e0de5aa73b7d7e9e39094350152e03db4b01529699c8b1b9a5f45af3a18e0c6fe8c9e98494ccb1773ecfbcf34f9e179278074aa7917050558e3622180c
6
+ metadata.gz: 34601a97808047c3d6042535e1188195111cae3432378e936b33bdb7fb06de3da3b32008a0a6219b81f7b34fa0e47c1fa70b524d3f341b7a268d9e8a951af3bf
7
+ data.tar.gz: 9b09f2e3df49fba2102eb513ad7f877b81cddb4fe0c11ce9c57ea12207d9f1771f5bbd88fe836985e92ced77ff05d57ee1f1979763c0714cd790b3d2dd1ff4ba
@@ -3,13 +3,45 @@ module Address
3
3
  class Addresses
4
4
  include ApiResource
5
5
  include ApiOperations::Retrieve
6
+
7
+ BASE_URL = 'http://address.api.nfe.io'
8
+
6
9
  def self.url
7
- "/v1/addresses"
10
+ '/v2/addresses'
8
11
  end
9
12
 
10
13
  def url
11
14
  "#{self.class.url}/#{self.id}"
12
15
  end
16
+
17
+ def self.api_request(url, method, params = nil)
18
+ address = super(url, method, params)
19
+
20
+ if address.is_a?(Hash)
21
+ format_address(address[:address])
22
+ else
23
+ legacy_url = 'http://open.nfe.io/v1/addresses'
24
+ super(legacy_url, method, params)
25
+ end
26
+ rescue
27
+ 'The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.'
28
+ end
29
+
30
+ def self.format_address(address)
31
+ {
32
+ postalCode: address[:postalCode],
33
+ streetSuffix: address[:streetSuffix],
34
+ street: address[:street],
35
+ district: address[:district],
36
+ city: {
37
+ code: address[:city][:code],
38
+ name: address[:city][:name]
39
+ },
40
+ state: {
41
+ abbreviation: address[:state]
42
+ }
43
+ }
44
+ end
13
45
  end
14
46
  end
15
- end
47
+ end
@@ -11,8 +11,8 @@ module Address
11
11
  params.map { |k,v| "#{k}=#{url_encode(v)}" }.join('&')
12
12
  end
13
13
 
14
- def api_request(url, method, params=nil)
15
- url = "#{BASE_URL}#{url}"
14
+ def api_request(url, method, params = nil)
15
+ url = URI.parse(self::BASE_URL).merge(url).to_s
16
16
  api_key = Address::Io.access_keys
17
17
 
18
18
  if method == :get && params
@@ -56,4 +56,4 @@ module Address
56
56
  end
57
57
  end
58
58
  end
59
- end
59
+ end
@@ -1,5 +1,5 @@
1
1
  module Address
2
2
  module Io
3
- VERSION = "1.1"
3
+ VERSION = '2.0'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: address-io
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.1'
4
+ version: '2.0'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ricardo Caldeira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-04-26 00:00:00.000000000 Z
11
+ date: 2019-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  version: '0'
121
121
  requirements: []
122
122
  rubyforge_project:
123
- rubygems_version: 2.7.6
123
+ rubygems_version: 2.7.7
124
124
  signing_key:
125
125
  specification_version: 4
126
126
  summary: Nfe.io's Adresses gem