eve_online 0.30.0 → 0.35.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +18 -54
  3. data/.deepsource.toml +5 -0
  4. data/.ruby-version +1 -1
  5. data/Appraisals +0 -12
  6. data/CHANGELOG.md +58 -0
  7. data/Gemfile.lock +57 -53
  8. data/Gemfile.mutant.lock +49 -50
  9. data/README.md +401 -133
  10. data/eve_online.gemspec +3 -3
  11. data/lib/eve_online.rb +40 -7
  12. data/lib/eve_online/esi/alliance_corporations.rb +1 -1
  13. data/lib/eve_online/esi/alliances.rb +1 -1
  14. data/lib/eve_online/esi/base.rb +15 -6
  15. data/lib/eve_online/esi/character_assets.rb +1 -1
  16. data/lib/eve_online/esi/character_calendar.rb +1 -1
  17. data/lib/eve_online/esi/character_calendar_event.rb +1 -1
  18. data/lib/eve_online/esi/{character_bookmarks.rb → character_contracts.rb} +7 -7
  19. data/lib/eve_online/esi/character_get_mail.rb +37 -0
  20. data/lib/eve_online/esi/character_location.rb +1 -1
  21. data/lib/eve_online/esi/character_mail_labels.rb +40 -0
  22. data/lib/eve_online/esi/character_online.rb +1 -1
  23. data/lib/eve_online/esi/character_ship.rb +1 -1
  24. data/lib/eve_online/esi/character_skills.rb +1 -1
  25. data/lib/eve_online/esi/character_wallet.rb +1 -1
  26. data/lib/eve_online/esi/character_wallet_journal.rb +2 -2
  27. data/lib/eve_online/esi/character_wallet_transactions.rb +41 -0
  28. data/lib/eve_online/esi/corporation_assets.rb +1 -1
  29. data/lib/eve_online/esi/corporation_npc.rb +20 -0
  30. data/lib/eve_online/esi/killmail.rb +30 -0
  31. data/lib/eve_online/esi/market_prices.rb +27 -0
  32. data/lib/eve_online/esi/models/aggressor.rb +1 -1
  33. data/lib/eve_online/esi/models/alliance.rb +1 -1
  34. data/lib/eve_online/esi/models/alliance_icon.rb +1 -1
  35. data/lib/eve_online/esi/models/alliance_short.rb +1 -1
  36. data/lib/eve_online/esi/models/ally.rb +1 -1
  37. data/lib/eve_online/esi/models/ancestry.rb +1 -1
  38. data/lib/eve_online/esi/models/asset.rb +1 -1
  39. data/lib/eve_online/esi/models/asset_location.rb +1 -1
  40. data/lib/eve_online/esi/models/asset_name.rb +1 -1
  41. data/lib/eve_online/esi/models/asteroid_belt.rb +1 -1
  42. data/lib/eve_online/esi/models/attributes.rb +1 -1
  43. data/lib/eve_online/esi/models/bloodline.rb +1 -1
  44. data/lib/eve_online/esi/models/blueprint.rb +1 -1
  45. data/lib/eve_online/esi/models/category.rb +1 -1
  46. data/lib/eve_online/esi/models/character.rb +1 -1
  47. data/lib/eve_online/esi/models/character_corporation_history.rb +1 -1
  48. data/lib/eve_online/esi/models/character_industry_job.rb +1 -1
  49. data/lib/eve_online/esi/models/character_location.rb +1 -1
  50. data/lib/eve_online/esi/models/character_order.rb +1 -1
  51. data/lib/eve_online/esi/models/character_portrait.rb +1 -1
  52. data/lib/eve_online/esi/models/character_ship.rb +1 -1
  53. data/lib/eve_online/esi/models/constellation.rb +1 -1
  54. data/lib/eve_online/esi/models/contract.rb +132 -0
  55. data/lib/eve_online/esi/models/coordinates.rb +1 -1
  56. data/lib/eve_online/esi/models/corporation.rb +1 -1
  57. data/lib/eve_online/esi/models/corporation_alliance_history.rb +1 -1
  58. data/lib/eve_online/esi/models/corporation_industry_job.rb +1 -1
  59. data/lib/eve_online/esi/models/corporation_order.rb +1 -1
  60. data/lib/eve_online/esi/models/defender.rb +1 -1
  61. data/lib/eve_online/esi/models/dogma_attribute.rb +1 -1
  62. data/lib/eve_online/esi/models/dogma_attribute_short.rb +1 -1
  63. data/lib/eve_online/esi/models/dogma_effect.rb +1 -1
  64. data/lib/eve_online/esi/models/dogma_effect_modifier.rb +1 -1
  65. data/lib/eve_online/esi/models/dogma_effect_short.rb +1 -1
  66. data/lib/eve_online/esi/models/event.rb +1 -1
  67. data/lib/eve_online/esi/models/event_details.rb +1 -1
  68. data/lib/eve_online/esi/models/faction.rb +1 -1
  69. data/lib/eve_online/esi/models/fatigue.rb +1 -1
  70. data/lib/eve_online/esi/models/graphic.rb +1 -1
  71. data/lib/eve_online/esi/models/group.rb +1 -1
  72. data/lib/eve_online/esi/models/home_location.rb +1 -1
  73. data/lib/eve_online/esi/models/jump_clone.rb +1 -1
  74. data/lib/eve_online/esi/models/killmail.rb +47 -0
  75. data/lib/eve_online/esi/models/killmail_short.rb +1 -1
  76. data/lib/eve_online/esi/models/loyalty_point.rb +1 -1
  77. data/lib/eve_online/esi/models/loyalty_store_offer.rb +1 -1
  78. data/lib/eve_online/esi/models/mail.rb +49 -0
  79. data/lib/eve_online/esi/models/mail_label.rb +34 -0
  80. data/lib/eve_online/esi/models/mail_recipient.rb +24 -0
  81. data/lib/eve_online/esi/models/mail_recipients.rb +21 -0
  82. data/lib/eve_online/esi/models/market_group.rb +1 -1
  83. data/lib/eve_online/esi/models/market_history.rb +1 -1
  84. data/lib/eve_online/esi/models/market_price.rb +29 -0
  85. data/lib/eve_online/esi/models/moon.rb +1 -1
  86. data/lib/eve_online/esi/models/notification.rb +1 -1
  87. data/lib/eve_online/esi/models/offer_required_item.rb +1 -1
  88. data/lib/eve_online/esi/models/online.rb +1 -1
  89. data/lib/eve_online/esi/models/planet.rb +1 -1
  90. data/lib/eve_online/esi/models/planet_short.rb +1 -1
  91. data/lib/eve_online/esi/models/position.rb +1 -1
  92. data/lib/eve_online/esi/models/public_contract.rb +98 -0
  93. data/lib/eve_online/esi/models/public_contract_item.rb +59 -0
  94. data/lib/eve_online/esi/models/race.rb +3 -3
  95. data/lib/eve_online/esi/models/region.rb +5 -6
  96. data/lib/eve_online/esi/models/server_status.rb +1 -1
  97. data/lib/eve_online/esi/models/skill.rb +1 -1
  98. data/lib/eve_online/esi/models/skill_queue_entry.rb +1 -1
  99. data/lib/eve_online/esi/models/standing.rb +1 -1
  100. data/lib/eve_online/esi/models/star.rb +1 -1
  101. data/lib/eve_online/esi/models/stargate.rb +8 -2
  102. data/lib/eve_online/esi/models/station.rb +1 -1
  103. data/lib/eve_online/esi/models/system.rb +1 -1
  104. data/lib/eve_online/esi/models/system_jump.rb +1 -1
  105. data/lib/eve_online/esi/models/system_kill.rb +1 -1
  106. data/lib/eve_online/esi/models/type.rb +1 -1
  107. data/lib/eve_online/esi/models/{wallet_journal_entry.rb → wallet_journal.rb} +4 -4
  108. data/lib/eve_online/esi/models/wallet_transaction.rb +66 -0
  109. data/lib/eve_online/esi/models/war.rb +1 -1
  110. data/lib/eve_online/esi/public_contract.rb +40 -0
  111. data/lib/eve_online/esi/public_contracts.rb +40 -0
  112. data/lib/eve_online/esi/universe_region.rb +2 -2
  113. data/lib/eve_online/esi/universe_stargate.rb +1 -1
  114. data/lib/eve_online/exceptions/error_limited.rb +8 -0
  115. data/lib/eve_online/formulas/blueprint_copy_time.rb +47 -0
  116. data/lib/eve_online/version.rb +1 -1
  117. metadata +32 -15
  118. data/lib/eve_online/esi/character_bookmark_folders.rb +0 -41
  119. data/lib/eve_online/esi/models/bookmark.rb +0 -71
  120. data/lib/eve_online/esi/models/bookmark_folder.rb +0 -24
  121. data/lib/eve_online/esi/models/stargate_destination.rb +0 -24
@@ -12,7 +12,7 @@ module EveOnline
12
12
  mutual: mutual,
13
13
  open_for_allies: open_for_allies,
14
14
  retracted: retracted,
15
- started: started,
15
+ started: started
16
16
  }
17
17
  end
18
18
 
@@ -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
@@ -17,8 +17,8 @@ module EveOnline
17
17
  @id = options.fetch(:id)
18
18
  end
19
19
 
20
- def_delegators :model, :as_json, :constellations, :description, :name,
21
- :region_id
20
+ def_delegators :model, :as_json, :description, :name,
21
+ :region_id, :constellation_ids
22
22
 
23
23
  def model
24
24
  @model ||= Models::Region.new(response)
@@ -18,7 +18,7 @@ module EveOnline
18
18
  end
19
19
 
20
20
  def_delegators :model, :as_json, :name, :stargate_id, :system_id,
21
- :type_id, :destination, :position
21
+ :type_id, :destination_stargate_id, :destination_system_id, :position
22
22
 
23
23
  def model
24
24
  @model ||= Models::Stargate.new(response)
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module Exceptions
5
+ class ErrorLimited < Base
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EveOnline
4
+ module Formulas
5
+ class BlueprintCopyTime
6
+ attr_reader :seconds, :science_level, :advanced_industry_level,
7
+ :science_copy_speed_bonus_per_level,
8
+ :advanced_industry_skill_industry_job_time_bonus_per_level, :runs
9
+
10
+ def initialize(seconds, science_level, advanced_industry_level,
11
+ science_copy_speed_bonus_per_level,
12
+ advanced_industry_skill_industry_job_time_bonus_per_level,
13
+ runs = 1)
14
+ @seconds = seconds
15
+ @science_level = science_level
16
+ @advanced_industry_level = advanced_industry_level
17
+ @science_copy_speed_bonus_per_level = science_copy_speed_bonus_per_level
18
+ @advanced_industry_skill_industry_job_time_bonus_per_level = advanced_industry_skill_industry_job_time_bonus_per_level
19
+ @runs = runs
20
+ end
21
+
22
+ def time
23
+ (BigDecimal(seconds.to_s) * BigDecimal(time_modifier.to_s) * BigDecimal(runs.to_s)).to_f
24
+ end
25
+
26
+ def time_modifier
27
+ science_copy_bonus_time_modifier * advanced_industry_job_time_bonus_time_modifier
28
+ end
29
+
30
+ def science_copy_bonus
31
+ science_level * science_copy_speed_bonus_per_level
32
+ end
33
+
34
+ def science_copy_bonus_time_modifier
35
+ (100.0 + science_copy_bonus) / 100.0
36
+ end
37
+
38
+ def advanced_industry_job_time_bonus
39
+ advanced_industry_level * advanced_industry_skill_industry_job_time_bonus_per_level
40
+ end
41
+
42
+ def advanced_industry_job_time_bonus_time_modifier
43
+ (100.0 + advanced_industry_job_time_bonus) / 100.0
44
+ end
45
+ end
46
+ end
47
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EveOnline
4
- VERSION = "0.30.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.30.0
4
+ version: 0.35.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Zubkov
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-06 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
@@ -142,14 +142,14 @@ dependencies:
142
142
  requirements:
143
143
  - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: 4.2.0
145
+ version: 5.2.0
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: 4.2.0
152
+ version: 5.2.0
153
153
  description: EveOnline ESI API.
154
154
  email:
155
155
  - igor.zubkov@gmail.com
@@ -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"
@@ -185,18 +186,19 @@ files:
185
186
  - lib/eve_online/esi/character_assets_names.rb
186
187
  - lib/eve_online/esi/character_attributes.rb
187
188
  - lib/eve_online/esi/character_blueprints.rb
188
- - lib/eve_online/esi/character_bookmark_folders.rb
189
- - lib/eve_online/esi/character_bookmarks.rb
190
189
  - lib/eve_online/esi/character_calendar.rb
191
190
  - lib/eve_online/esi/character_calendar_event.rb
192
191
  - lib/eve_online/esi/character_clones.rb
192
+ - lib/eve_online/esi/character_contracts.rb
193
193
  - lib/eve_online/esi/character_corporation_history.rb
194
194
  - lib/eve_online/esi/character_fatigue.rb
195
+ - lib/eve_online/esi/character_get_mail.rb
195
196
  - lib/eve_online/esi/character_implants.rb
196
197
  - lib/eve_online/esi/character_industry_jobs.rb
197
198
  - lib/eve_online/esi/character_killmails_recent.rb
198
199
  - lib/eve_online/esi/character_location.rb
199
200
  - lib/eve_online/esi/character_loyalty_points.rb
201
+ - lib/eve_online/esi/character_mail_labels.rb
200
202
  - lib/eve_online/esi/character_notifications.rb
201
203
  - lib/eve_online/esi/character_online.rb
202
204
  - lib/eve_online/esi/character_orders.rb
@@ -207,6 +209,7 @@ files:
207
209
  - lib/eve_online/esi/character_standings.rb
208
210
  - lib/eve_online/esi/character_wallet.rb
209
211
  - lib/eve_online/esi/character_wallet_journal.rb
212
+ - lib/eve_online/esi/character_wallet_transactions.rb
210
213
  - lib/eve_online/esi/corporation.rb
211
214
  - lib/eve_online/esi/corporation_alliance_history.rb
212
215
  - lib/eve_online/esi/corporation_assets.rb
@@ -216,14 +219,17 @@ files:
216
219
  - lib/eve_online/esi/corporation_industry_jobs.rb
217
220
  - lib/eve_online/esi/corporation_killmails_recent.rb
218
221
  - lib/eve_online/esi/corporation_loyalty_store_offers.rb
222
+ - lib/eve_online/esi/corporation_npc.rb
219
223
  - lib/eve_online/esi/corporation_orders.rb
220
224
  - lib/eve_online/esi/dogma_attribute.rb
221
225
  - lib/eve_online/esi/dogma_attributes.rb
222
226
  - lib/eve_online/esi/dogma_effect.rb
223
227
  - lib/eve_online/esi/dogma_effects.rb
228
+ - lib/eve_online/esi/killmail.rb
224
229
  - lib/eve_online/esi/market_group.rb
225
230
  - lib/eve_online/esi/market_groups.rb
226
231
  - lib/eve_online/esi/market_history.rb
232
+ - lib/eve_online/esi/market_prices.rb
227
233
  - lib/eve_online/esi/models/aggressor.rb
228
234
  - lib/eve_online/esi/models/alliance.rb
229
235
  - lib/eve_online/esi/models/alliance_icon.rb
@@ -239,8 +245,6 @@ files:
239
245
  - lib/eve_online/esi/models/base.rb
240
246
  - lib/eve_online/esi/models/bloodline.rb
241
247
  - lib/eve_online/esi/models/blueprint.rb
242
- - lib/eve_online/esi/models/bookmark.rb
243
- - lib/eve_online/esi/models/bookmark_folder.rb
244
248
  - lib/eve_online/esi/models/category.rb
245
249
  - lib/eve_online/esi/models/character.rb
246
250
  - lib/eve_online/esi/models/character_corporation_history.rb
@@ -250,6 +254,7 @@ files:
250
254
  - lib/eve_online/esi/models/character_portrait.rb
251
255
  - lib/eve_online/esi/models/character_ship.rb
252
256
  - lib/eve_online/esi/models/constellation.rb
257
+ - lib/eve_online/esi/models/contract.rb
253
258
  - lib/eve_online/esi/models/coordinates.rb
254
259
  - lib/eve_online/esi/models/corporation.rb
255
260
  - lib/eve_online/esi/models/corporation_alliance_history.rb
@@ -272,11 +277,17 @@ files:
272
277
  - lib/eve_online/esi/models/group.rb
273
278
  - lib/eve_online/esi/models/home_location.rb
274
279
  - lib/eve_online/esi/models/jump_clone.rb
280
+ - lib/eve_online/esi/models/killmail.rb
275
281
  - lib/eve_online/esi/models/killmail_short.rb
276
282
  - lib/eve_online/esi/models/loyalty_point.rb
277
283
  - lib/eve_online/esi/models/loyalty_store_offer.rb
284
+ - lib/eve_online/esi/models/mail.rb
285
+ - lib/eve_online/esi/models/mail_label.rb
286
+ - lib/eve_online/esi/models/mail_recipient.rb
287
+ - lib/eve_online/esi/models/mail_recipients.rb
278
288
  - lib/eve_online/esi/models/market_group.rb
279
289
  - lib/eve_online/esi/models/market_history.rb
290
+ - lib/eve_online/esi/models/market_price.rb
280
291
  - lib/eve_online/esi/models/moon.rb
281
292
  - lib/eve_online/esi/models/notification.rb
282
293
  - lib/eve_online/esi/models/offer_required_item.rb
@@ -286,6 +297,8 @@ files:
286
297
  - lib/eve_online/esi/models/planet_short.rb
287
298
  - lib/eve_online/esi/models/planets.rb
288
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
289
302
  - lib/eve_online/esi/models/race.rb
290
303
  - lib/eve_online/esi/models/region.rb
291
304
  - lib/eve_online/esi/models/server_status.rb
@@ -294,14 +307,16 @@ files:
294
307
  - lib/eve_online/esi/models/standing.rb
295
308
  - lib/eve_online/esi/models/star.rb
296
309
  - lib/eve_online/esi/models/stargate.rb
297
- - lib/eve_online/esi/models/stargate_destination.rb
298
310
  - lib/eve_online/esi/models/station.rb
299
311
  - lib/eve_online/esi/models/system.rb
300
312
  - lib/eve_online/esi/models/system_jump.rb
301
313
  - lib/eve_online/esi/models/system_kill.rb
302
314
  - lib/eve_online/esi/models/type.rb
303
- - lib/eve_online/esi/models/wallet_journal_entry.rb
315
+ - lib/eve_online/esi/models/wallet_journal.rb
316
+ - lib/eve_online/esi/models/wallet_transaction.rb
304
317
  - lib/eve_online/esi/models/war.rb
318
+ - lib/eve_online/esi/public_contract.rb
319
+ - lib/eve_online/esi/public_contracts.rb
305
320
  - lib/eve_online/esi/server_status.rb
306
321
  - lib/eve_online/esi/universe_ancestries.rb
307
322
  - lib/eve_online/esi/universe_asteroid_belt.rb
@@ -336,6 +351,7 @@ files:
336
351
  - lib/eve_online/exceptions/bad_gateway.rb
337
352
  - lib/eve_online/exceptions/bad_request.rb
338
353
  - lib/eve_online/exceptions/base.rb
354
+ - lib/eve_online/exceptions/error_limited.rb
339
355
  - lib/eve_online/exceptions/forbidden.rb
340
356
  - lib/eve_online/exceptions/internal_server_error.rb
341
357
  - lib/eve_online/exceptions/no_content.rb
@@ -344,6 +360,7 @@ files:
344
360
  - lib/eve_online/exceptions/service_unavailable.rb
345
361
  - lib/eve_online/exceptions/timeout.rb
346
362
  - lib/eve_online/exceptions/unauthorized.rb
363
+ - lib/eve_online/formulas/blueprint_copy_time.rb
347
364
  - lib/eve_online/version.rb
348
365
  - mutant.sh
349
366
  homepage: https://github.com/evemonk/eve_online
@@ -355,7 +372,7 @@ metadata:
355
372
  documentation_uri: https://github.com/evemonk/eve_online/blob/master/README.md
356
373
  homepage_uri: https://github.com/evemonk/eve_online
357
374
  source_code_uri: https://github.com/evemonk/eve_online
358
- post_install_message:
375
+ post_install_message:
359
376
  rdoc_options: []
360
377
  require_paths:
361
378
  - lib
@@ -363,15 +380,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
363
380
  requirements:
364
381
  - - ">="
365
382
  - !ruby/object:Gem::Version
366
- version: '2.4'
383
+ version: '2.5'
367
384
  required_rubygems_version: !ruby/object:Gem::Requirement
368
385
  requirements:
369
386
  - - ">="
370
387
  - !ruby/object:Gem::Version
371
388
  version: '0'
372
389
  requirements: []
373
- rubygems_version: 3.0.6
374
- signing_key:
390
+ rubygems_version: 3.1.2
391
+ signing_key:
375
392
  specification_version: 4
376
393
  summary: EveOnline ESI API.
377
394
  test_files: []
@@ -1,41 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EveOnline
4
- module ESI
5
- class CharacterBookmarkFolders < Base
6
- API_PATH = "/v2/characters/%<character_id>s/bookmarks/folders/"
7
-
8
- attr_reader :character_id, :page
9
-
10
- def initialize(options)
11
- super
12
-
13
- @character_id = options.fetch(:character_id)
14
- @page = options.fetch(:page, 1)
15
- end
16
-
17
- def bookmark_folders
18
- @bookmark_folders ||=
19
- begin
20
- output = []
21
- response.each do |bookmark_folder|
22
- output << Models::BookmarkFolder.new(bookmark_folder)
23
- end
24
- output
25
- end
26
- end
27
-
28
- def scope
29
- "esi-bookmarks.read_character_bookmarks.v1"
30
- end
31
-
32
- def additional_query_params
33
- [:page]
34
- end
35
-
36
- def path
37
- format(API_PATH, character_id: character_id)
38
- end
39
- end
40
- end
41
- end
@@ -1,71 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module EveOnline
4
- module ESI
5
- module Models
6
- class Bookmark < Base
7
- def as_json
8
- {
9
- bookmark_id: bookmark_id,
10
- created: created,
11
- creator_id: creator_id,
12
- folder_id: folder_id,
13
- item_id: item_id,
14
- item_type_id: item_type_id,
15
- label: label,
16
- location_id: location_id,
17
- notes: notes,
18
- }
19
- end
20
-
21
- def bookmark_id
22
- options["bookmark_id"]
23
- end
24
-
25
- def created
26
- created = options["created"]
27
-
28
- parse_datetime_with_timezone(created) if created
29
- end
30
-
31
- def creator_id
32
- options["creator_id"]
33
- end
34
-
35
- def folder_id
36
- options["folder_id"]
37
- end
38
-
39
- # TODO: extract to class Item
40
- def item_id
41
- options["item"]["item_id"] if options["item"]
42
- end
43
-
44
- def item_type_id
45
- options["item"]["type_id"] if options["item"]
46
- end
47
-
48
- def label
49
- options["label"]
50
- end
51
-
52
- def location_id
53
- options["location_id"]
54
- end
55
-
56
- def notes
57
- options["notes"]
58
- end
59
-
60
- def coordinates
61
- @coordinates ||= Coordinates.new(options["coordinates"])
62
- end
63
-
64
- # TODO: finish
65
- # def item
66
- # @item ||= Item.new(options['item'])
67
- # end
68
- end
69
- end
70
- end
71
- end