eve_online 0.34.0 → 0.35.0

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: 9cadda78a7d2823ea8f60726c89e502e1caa67ee86dd28e038cb572f5fe80071
4
- data.tar.gz: 0cf160ff1abfd87caa400555de5c69e5b9625265ea1b581480e22a84cdde8793
3
+ metadata.gz: 5b14b54b7da3429b1bd0c1b6e975195aaba4d24e0272a5c38d4e7a9aa5b0de42
4
+ data.tar.gz: 5c39f9345325b3bf9a9764ffbe49704b96fc43c1325e9a06e2ffbadbcd8f9fa6
5
5
  SHA512:
6
- metadata.gz: b91ba41d06502f88b69af1de359bbf2f3c10b2fe515590e3fc574cc3216a404c5dc02a959b6a00491a1ee6e4d9284e68a9dad2ff2ac682077a6272326d922523
7
- data.tar.gz: 3bf4ea87dfc8ef0198828da27ba2ce54f34cbb2c46f94f2e824c71f5aeb2ae24733bb508d927c4cd8e540cda83b53c713d4305bc3e66bc8de6ebfaedf306c1c3
6
+ metadata.gz: e8c723bba7c7f720c5a8f7f78c9f3f6a02ac2559d3ac58fa0f5a89bcafaf7c111edd23ade1c51fe01b8b5bd53e40a31315902a6f35ee7940113691d81c4624b5
7
+ data.tar.gz: 34376fdfe262ab51ab60550e725a19fbe1eb4458db64f91e3660ccc76f4cd39aa391b46ac002fda5923cc65751ea1750a2a53e71075cca13d2555da03bea14af
@@ -0,0 +1,5 @@
1
+ version = 1
2
+
3
+ [[analyzers]]
4
+ name = "ruby"
5
+ enabled = true
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.35.0
4
+
5
+ * Add `EveOnline::ESI::PublicContracts`
6
+ * Add `EveOnline::ESI::Models::PublicContract`
7
+ * Add `EveOnline::ESI::Models::PublicContractItem`
8
+ * Add `EveOnline::ESI::PublicContract`
9
+
3
10
  ## v0.34.0
4
11
 
5
12
  * Rename `EveOnline::ESI::Models::Race#alliance_id` to `#faction_id`. [Fix esi issue 812](https://github.com/esi/esi-issues/issues/812).
@@ -1,13 +1,13 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eve_online (0.34.0)
4
+ eve_online (0.35.0)
5
5
  activesupport (>= 5.2.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activesupport (6.0.3.1)
10
+ activesupport (6.0.3.2)
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
12
  i18n (>= 0.7, < 2)
13
13
  minitest (~> 5.1)
@@ -19,7 +19,7 @@ GEM
19
19
  bundler
20
20
  rake
21
21
  thor (>= 0.14.0)
22
- ast (2.4.0)
22
+ ast (2.4.1)
23
23
  awesome_print (1.8.0)
24
24
  coderay (1.1.3)
25
25
  colorize (0.8.1)
@@ -51,7 +51,7 @@ GEM
51
51
  tomlrb
52
52
  nokogiri (1.10.9)
53
53
  mini_portile2 (~> 2.4.0)
54
- parallel (1.19.1)
54
+ parallel (1.19.2)
55
55
  parser (2.7.1.3)
56
56
  ast (~> 2.4.0)
57
57
  pry (0.13.1)
@@ -95,7 +95,7 @@ GEM
95
95
  ruby_parser (3.14.2)
96
96
  sexp_processor (~> 4.9)
97
97
  safe_yaml (1.0.5)
98
- sexp_processor (4.14.1)
98
+ sexp_processor (4.15.0)
99
99
  simplecov (0.18.5)
100
100
  docile (~> 1.1)
101
101
  simplecov-html (~> 0.11)
@@ -1,14 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eve_online (0.34.0)
4
+ eve_online (0.35.0)
5
5
  activesupport (>= 5.2.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
10
  abstract_type (0.0.7)
11
- activesupport (6.0.3.1)
11
+ activesupport (6.0.3.2)
12
12
  concurrent-ruby (~> 1.0, >= 1.0.2)
13
13
  i18n (>= 0.7, < 2)
14
14
  minitest (~> 5.1)
@@ -27,7 +27,7 @@ GEM
27
27
  bundler
28
28
  rake
29
29
  thor (>= 0.14.0)
30
- ast (2.4.0)
30
+ ast (2.4.1)
31
31
  concord (0.1.5)
32
32
  adamantium (~> 0.2.0)
33
33
  equalizer (~> 0.0.9)
data/README.md CHANGED
@@ -3,8 +3,9 @@
3
3
  [![CircleCI](https://circleci.com/gh/evemonk/eve_online.svg?style=svg)](https://circleci.com/gh/evemonk/eve_online)
4
4
  [![Gem Version](https://badge.fury.io/rb/eve_online.svg)](https://badge.fury.io/rb/eve_online)
5
5
  [![Gem Downloads](https://img.shields.io/gem/dt/eve_online.svg)](https://rubygems.org/gems/eve_online)
6
- [![Test Coverage](https://api.codeclimate.com/v1/badges/955073c905b91d53e68c/test_coverage)](https://codeclimate.com/github/evemonk/eve_online/test_coverage)
6
+ [![Known Vulnerabilities](https://snyk.io/test/github/evemonk/eve_online/badge.svg)](https://snyk.io/test/github/evemonk/eve_online)
7
7
  [![security](https://hakiri.io/github/evemonk/eve_online/master.svg)](https://hakiri.io/github/evemonk/eve_online/master)
8
+ [![DeepSource](https://static.deepsource.io/deepsource-badge-light-mini.svg)](https://deepsource.io/gh/evemonk/eve_online/?ref=repository-badge)
8
9
 
9
10
  This gem implement Ruby API for EveOnline MMORPG (ESI).
10
11
 
@@ -763,8 +764,98 @@ contracts.etag # => "6e18566a8f786f08aba678262360d0c74a783f9923aa43f8043133e4"
763
764
 
764
765
  #### Get public contracts
765
766
 
767
+ ```ruby
768
+ options = { region_id: 10_000_043, page: 1 }
769
+
770
+ contracts = EveOnline::ESI::PublicContracts.new(options)
771
+
772
+ contracts.scope # => nil
773
+
774
+ contracts.page # => 1
775
+
776
+ contracts.total_pages # => 4
777
+
778
+ contracts.contracts.size # => 1000
779
+
780
+ contract = contracts.contracts.first
781
+
782
+ contract.as_json # => {:buyout=>nil,
783
+ # :collateral=>0.0,
784
+ # :contract_id=>157834735,
785
+ # :date_expired=>Wed, 17 Jun 2020 21:36:41 UTC +00:00,
786
+ # :date_issued=>Wed, 20 May 2020 21:36:41 UTC +00:00,
787
+ # :days_to_complete=>0,
788
+ # :end_location_id=>60008494,
789
+ # :for_corporation=>true,
790
+ # :issuer_corporation_id=>897372069,
791
+ # :issuer_id=>1314102096,
792
+ # :price=>1250000000.0,
793
+ # :reward=>0.0,
794
+ # :start_location_id=>60008494,
795
+ # :title=>"Apostle Me10/Te16 Complete Bpc 10 Pack",
796
+ # :type=>"item_exchange",
797
+ # :volume=>100.0}
798
+
799
+ contract.buyout # => nil
800
+ contract.collateral # => 0.0
801
+ contract.contract_id # => 157834735
802
+ contract.date_expired # => Wed, 17 Jun 2020 21:36:41 UTC +00:00
803
+ contract.date_issued # => Wed, 20 May 2020 21:36:41 UTC +00:00
804
+ contract.days_to_complete # => 0
805
+ contract.end_location_id # => 60008494
806
+ contract.for_corporation # => true
807
+ contract.issuer_corporation_id # => 897372069
808
+ contract.issuer_id # => 1314102096
809
+ contract.price # => 1250000000.0
810
+ contract.reward # => 0.0
811
+ contract.start_location_id # => 60008494
812
+ contract.title # => "Apostle Me10/Te16 Complete Bpc 10 Pack"
813
+ contract.type # => "item_exchange"
814
+ contract.volume # => 100.0
815
+
816
+ contracts.etag # => "3f7fdf9a69e35bb35d619b6cb5043a2766d11ca6306a8b5af369ce6e"
817
+ ```
818
+
766
819
  #### Get public contract bids
767
820
 
821
+ ```ruby
822
+ options = { contract_id: 157_872_948, page: 1 }
823
+
824
+ contract = EveOnline::ESI::PublicContract.new(options)
825
+
826
+ contract.scope # => nil
827
+
828
+ contract.page # => 1
829
+
830
+ contract.total_pages # => 1
831
+
832
+ contract.items.size # => 1
833
+
834
+ item = contract.items.first
835
+
836
+ item.as_json # => {:is_blueprint_copy=>true,
837
+ # :is_included=>true,
838
+ # :item_id=>1029552558074,
839
+ # :material_efficiency=>10,
840
+ # :quantity=>1,
841
+ # :record_id=>3210378611,
842
+ # :runs=>400,
843
+ # :time_efficiency=>20,
844
+ # :type_id=>29040}
845
+
846
+ item.is_blueprint_copy # => true
847
+ item.is_included # => true
848
+ item.item_id # => 1029552558074
849
+ item.material_efficiency # => 10
850
+ item.quantity # => 1
851
+ item.record_id # => 3210378611
852
+ item.runs # => 400
853
+ item.time_efficiency # => 20
854
+ item.type_id # => 29040
855
+
856
+ contract.etag # => "d458c3f56c114882a9ecfe1aaf173837310b15b6e7cef86a019e700f"
857
+ ```
858
+
768
859
  #### Get public contract items
769
860
 
770
861
  #### Get corporation contracts
@@ -2298,12 +2389,12 @@ races.races.size # => 4
2298
2389
 
2299
2390
  race = races.races.first
2300
2391
 
2301
- race.as_json # => {:alliance_id=>500002,
2392
+ race.as_json # => {:faction_id=>500002,
2302
2393
  # :description=>"Once a thriving tribal civilization, the Minmatar...",
2303
2394
  # :name=>"Minmatar",
2304
2395
  # :race_id=>2}
2305
2396
 
2306
- race.alliance_id # => 500002
2397
+ race.faction_id # => 500002
2307
2398
  race.description # => "Once a thriving tribal civilization, the Minmatar..."
2308
2399
  race.name # => "Minmatar"
2309
2400
  race.race_id # => 2
@@ -46,6 +46,8 @@ require "eve_online/esi/character_clones"
46
46
  require "eve_online/esi/character_implants"
47
47
 
48
48
  require "eve_online/esi/character_contracts"
49
+ require "eve_online/esi/public_contracts"
50
+ require "eve_online/esi/public_contract"
49
51
 
50
52
  require "eve_online/esi/corporation"
51
53
  require "eve_online/esi/corporation_alliance_history"
@@ -155,6 +157,8 @@ require "eve_online/esi/models/character_ship"
155
157
  require "eve_online/esi/models/blueprint"
156
158
  require "eve_online/esi/models/standing"
157
159
  require "eve_online/esi/models/contract"
160
+ require "eve_online/esi/models/public_contract"
161
+ require "eve_online/esi/models/public_contract_item"
158
162
  require "eve_online/esi/models/fatigue"
159
163
  require "eve_online/esi/models/notification"
160
164
  require "eve_online/esi/models/event"
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class PublicContract < Base
7
+ def as_json
8
+ {
9
+ buyout: buyout,
10
+ collateral: collateral,
11
+ contract_id: contract_id,
12
+ date_expired: date_expired,
13
+ date_issued: date_issued,
14
+ days_to_complete: days_to_complete,
15
+ end_location_id: end_location_id,
16
+ for_corporation: for_corporation,
17
+ issuer_corporation_id: issuer_corporation_id,
18
+ issuer_id: issuer_id,
19
+ price: price,
20
+ reward: reward,
21
+ start_location_id: start_location_id,
22
+ title: title,
23
+ type: type,
24
+ volume: volume
25
+ }
26
+ end
27
+
28
+ def buyout
29
+ options["buyout"]
30
+ end
31
+
32
+ def collateral
33
+ options["collateral"]
34
+ end
35
+
36
+ def contract_id
37
+ options["contract_id"]
38
+ end
39
+
40
+ def date_expired
41
+ date_expired = options["date_expired"]
42
+
43
+ parse_datetime_with_timezone(date_expired) if date_expired
44
+ end
45
+
46
+ def date_issued
47
+ date_issued = options["date_issued"]
48
+
49
+ parse_datetime_with_timezone(date_issued) if date_issued
50
+ end
51
+
52
+ def days_to_complete
53
+ options["days_to_complete"]
54
+ end
55
+
56
+ def end_location_id
57
+ options["end_location_id"]
58
+ end
59
+
60
+ def for_corporation
61
+ options["for_corporation"]
62
+ end
63
+
64
+ def issuer_corporation_id
65
+ options["issuer_corporation_id"]
66
+ end
67
+
68
+ def issuer_id
69
+ options["issuer_id"]
70
+ end
71
+
72
+ def price
73
+ options["price"]
74
+ end
75
+
76
+ def reward
77
+ options["reward"]
78
+ end
79
+
80
+ def start_location_id
81
+ options["start_location_id"]
82
+ end
83
+
84
+ def title
85
+ options["title"]
86
+ end
87
+
88
+ def type
89
+ options["type"]
90
+ end
91
+
92
+ def volume
93
+ options["volume"]
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ module Models
6
+ class PublicContractItem < Base
7
+ def as_json
8
+ {
9
+ is_blueprint_copy: is_blueprint_copy,
10
+ is_included: is_included,
11
+ item_id: item_id,
12
+ material_efficiency: material_efficiency,
13
+ quantity: quantity,
14
+ record_id: record_id,
15
+ runs: runs,
16
+ time_efficiency: time_efficiency,
17
+ type_id: type_id
18
+ }
19
+ end
20
+
21
+ def is_blueprint_copy
22
+ options["is_blueprint_copy"]
23
+ end
24
+
25
+ def is_included
26
+ options["is_included"]
27
+ end
28
+
29
+ def item_id
30
+ options["item_id"]
31
+ end
32
+
33
+ def material_efficiency
34
+ options["material_efficiency"]
35
+ end
36
+
37
+ def quantity
38
+ options["quantity"]
39
+ end
40
+
41
+ def record_id
42
+ options["record_id"]
43
+ end
44
+
45
+ def runs
46
+ options["runs"]
47
+ end
48
+
49
+ def time_efficiency
50
+ options["time_efficiency"]
51
+ end
52
+
53
+ def type_id
54
+ options["type_id"]
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ class PublicContract < Base
6
+ API_PATH = "/v1/contracts/public/items/%<contract_id>s/"
7
+
8
+ attr_reader :contract_id, :page
9
+
10
+ def initialize(options)
11
+ super
12
+
13
+ @contract_id = options.fetch(:contract_id)
14
+ @page = options.fetch(:page, 1)
15
+ end
16
+
17
+ def items
18
+ @items ||=
19
+ begin
20
+ output = []
21
+ response.each do |item|
22
+ output << Models::PublicContractItem.new(item)
23
+ end
24
+ output
25
+ end
26
+ end
27
+
28
+ def scope
29
+ end
30
+
31
+ def additional_query_params
32
+ [:page]
33
+ end
34
+
35
+ def path
36
+ format(API_PATH, contract_id: contract_id)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module ESI
5
+ class PublicContracts < Base
6
+ API_PATH = "/v1/contracts/public/%<region_id>s/"
7
+
8
+ attr_reader :region_id, :page
9
+
10
+ def initialize(options)
11
+ super
12
+
13
+ @region_id = options.fetch(:region_id)
14
+ @page = options.fetch(:page, 1)
15
+ end
16
+
17
+ def contracts
18
+ @contracts ||=
19
+ begin
20
+ output = []
21
+ response.each do |contract|
22
+ output << Models::PublicContract.new(contract)
23
+ end
24
+ output
25
+ end
26
+ end
27
+
28
+ def scope
29
+ end
30
+
31
+ def additional_query_params
32
+ [:page]
33
+ end
34
+
35
+ def path
36
+ format(API_PATH, region_id: region_id)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EveOnline
4
- VERSION = "0.34.0"
4
+ VERSION = "0.35.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eve_online
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.34.0
4
+ version: 0.35.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Zubkov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-09 00:00:00.000000000 Z
11
+ date: 2020-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -158,6 +158,7 @@ extensions: []
158
158
  extra_rdoc_files: []
159
159
  files:
160
160
  - ".circleci/config.yml"
161
+ - ".deepsource.toml"
161
162
  - ".github/FUNDING.yml"
162
163
  - ".gitignore"
163
164
  - ".mdlrc"
@@ -296,6 +297,8 @@ files:
296
297
  - lib/eve_online/esi/models/planet_short.rb
297
298
  - lib/eve_online/esi/models/planets.rb
298
299
  - lib/eve_online/esi/models/position.rb
300
+ - lib/eve_online/esi/models/public_contract.rb
301
+ - lib/eve_online/esi/models/public_contract_item.rb
299
302
  - lib/eve_online/esi/models/race.rb
300
303
  - lib/eve_online/esi/models/region.rb
301
304
  - lib/eve_online/esi/models/server_status.rb
@@ -312,6 +315,8 @@ files:
312
315
  - lib/eve_online/esi/models/wallet_journal.rb
313
316
  - lib/eve_online/esi/models/wallet_transaction.rb
314
317
  - lib/eve_online/esi/models/war.rb
318
+ - lib/eve_online/esi/public_contract.rb
319
+ - lib/eve_online/esi/public_contracts.rb
315
320
  - lib/eve_online/esi/server_status.rb
316
321
  - lib/eve_online/esi/universe_ancestries.rb
317
322
  - lib/eve_online/esi/universe_asteroid_belt.rb