ruby-gls 0.0.3 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 463a1d0384a3d9c48b17a887bdfdc11c1619cf254da3fab9e83ae09d6a8e9693
4
- data.tar.gz: b65c2fa03f804aa64f750f81e7afbce9f1cf075c30d512ab5685a0cc54292c82
3
+ metadata.gz: 9b7cde32a4268f0464679ee590c06a28e88347dd4679ec53f508ad9c04bc93eb
4
+ data.tar.gz: 51d153dc3da485baed746ee194958311c454d8913752adc31680323458627e4d
5
5
  SHA512:
6
- metadata.gz: 5522b9d2646a8835765024172ae1248c45ece370b1e4dcb13ed49f736b089b3f790af7f2b2a3759bf86de60f0ba71392227e18dce6215b77cf6513c278ecd08e
7
- data.tar.gz: e05b51c2a2bcf2070b91995c7da814675e2c5611ceff8e6d0f0441530ebf07814c024439d1a2f06fe1b696ec38f14ca729ff5f6fa869ff14db816a78777094a6
6
+ metadata.gz: b44a115a0ba6af3b3a1324754026457be216645c04b997c1d8cb7bb3c66031137eb600777f80c4264d8ff750b7b86f31801b6280eafdb8021103e7d0dfbb1166
7
+ data.tar.gz: 7598bc94db828061be69c75fdbc4b304d22ef0f9ffb5e20762d5df75d1fcd4e5897c248b737cd5469a4b97f97ddbfe537aadbe47709ba150ef093fc8bd97ffa7
@@ -1,3 +1,3 @@
1
1
  class RubyGLS
2
- VERSION='0.0.3'
2
+ VERSION='1.0.2'
3
3
  end
data/lib/ruby-gls.rb CHANGED
@@ -1,69 +1,12 @@
1
- require 'net/http'
2
- require 'json'
3
-
4
1
  require 'ruby-gls/version'
5
2
  require 'ruby-gls/configuration'
6
- require 'nokogiri'
3
+ require 'ruby-gls/tracking'
4
+ require 'ruby-gls/client'
5
+ require 'ruby-gls/connection'
6
+ require 'ruby-gls/url'
7
7
 
8
8
  class RubyGLS
9
+ extend Tracking
10
+
9
11
  RubyGLS.configure
10
-
11
- class << self
12
-
13
- def find(tracking_number)
14
- uri = URI(generate_url(tracking_number))
15
- res = Net::HTTP.get_response(uri)
16
-
17
- parsed = JSON.parse(res.body)
18
-
19
- key = parsed.dig('content').keys.last
20
- html = parsed.dig('content', key, 'html')
21
-
22
- doc = Nokogiri::HTML(html)
23
-
24
- status = doc.css('.trigger-status').text.strip
25
- status_desc = doc.css('.text-primary.lead strong').text.strip
26
- parcel_number = doc.css('.row.justify-content-left').text&.strip&.split(':')&.last&.strip
27
-
28
- detailed = [].tap do |arr|
29
- doc.css('.data_table tbody tr').each do |row|
30
-
31
- date, time, parcel_status, loc = row.css('td').map(&:text).map(&:strip)
32
-
33
- arr << {
34
- date: date,
35
- time: time,
36
- parcel_status: parcel_status,
37
- location: loc
38
- }
39
- end
40
- end
41
-
42
- if status == ""
43
- status = 'Not found'
44
- status_desc = "No tracking information found for #{tracking_number}"
45
- end
46
-
47
- {
48
- tracking_number: tracking_number,
49
- status: status,
50
- status_description: status_desc,
51
- parcel_number: parcel_number,
52
- detailed_tracking: detailed
53
- }
54
- rescue => e
55
- {
56
- tracking_number: tracking_number,
57
- status: 'Not found',
58
- status_description: "#{e.message}"
59
- }
60
- end
61
-
62
- private
63
-
64
- def generate_url(tracking_number)
65
- RubyGLS.config.base_url + "&match=#{tracking_number}"
66
- end
67
-
68
- end
69
12
  end
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-gls
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adem Dinarevic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-12 00:00:00.000000000 Z
11
+ date: 2022-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rest-client
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 2.1.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 2.1.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rspec
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -28,14 +42,14 @@ dependencies:
28
42
  name: nokogiri
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - "~>"
45
+ - - ">"
32
46
  - !ruby/object:Gem::Version
33
47
  version: 1.12.4
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - "~>"
52
+ - - ">"
39
53
  - !ruby/object:Gem::Version
40
54
  version: 1.12.4
41
55
  description: Ruby client for GLS API
@@ -67,7 +81,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0'
69
83
  requirements: []
70
- rubygems_version: 3.0.9
84
+ rubygems_version: 3.1.2
71
85
  signing_key:
72
86
  specification_version: 4
73
87
  summary: Ruby client for GLS API