blizzard_api 0.5.1 → 0.5.6
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 +4 -4
 - data/.github/workflows/ruby.yml +21 -0
 - data/CHANGELOG.md +22 -0
 - data/Gemfile.lock +16 -16
 - data/README.md +58 -218
 - data/blizzard_api.gemspec +6 -4
 - data/lib/blizzard_api/diablo/community/act.rb +2 -2
 - data/lib/blizzard_api/diablo/community/artisan.rb +2 -2
 - data/lib/blizzard_api/diablo/community/character.rb +2 -2
 - data/lib/blizzard_api/diablo/community/follower.rb +1 -1
 - data/lib/blizzard_api/diablo/community/item.rb +1 -1
 - data/lib/blizzard_api/diablo/community/item_type.rb +2 -2
 - data/lib/blizzard_api/diablo/community/profile.rb +4 -4
 - data/lib/blizzard_api/diablo/game_data/generic_data_endpoint.rb +3 -3
 - data/lib/blizzard_api/hearthstone/game_data/back.rb +1 -1
 - data/lib/blizzard_api/hearthstone/game_data/card.rb +2 -2
 - data/lib/blizzard_api/hearthstone/game_data/generic_data_endpoint.rb +2 -2
 - data/lib/blizzard_api/request.rb +3 -3
 - data/lib/blizzard_api/starcraft.rb +7 -0
 - data/lib/blizzard_api/starcraft/community/account.rb +1 -1
 - data/lib/blizzard_api/starcraft/community/ladder.rb +2 -2
 - data/lib/blizzard_api/starcraft/community/legacy.rb +88 -0
 - data/lib/blizzard_api/starcraft/community/profile.rb +5 -5
 - data/lib/blizzard_api/starcraft/game_data/league.rb +1 -1
 - data/lib/blizzard_api/version.rb +1 -1
 - data/lib/blizzard_api/wow.rb +16 -7
 - data/lib/blizzard_api/wow/game_data/achievement.rb +3 -3
 - data/lib/blizzard_api/wow/game_data/auction.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/azerite_essence.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/covenant.rb +79 -0
 - data/lib/blizzard_api/wow/game_data/creature.rb +6 -6
 - data/lib/blizzard_api/wow/game_data/generic_data_endpoint.rb +3 -3
 - data/lib/blizzard_api/wow/game_data/guild_crest.rb +2 -2
 - data/lib/blizzard_api/wow/game_data/item.rb +6 -6
 - data/lib/blizzard_api/wow/game_data/journal.rb +8 -8
 - data/lib/blizzard_api/wow/game_data/modified_crafting.rb +4 -4
 - data/lib/blizzard_api/wow/game_data/mythic_keystone.rb +6 -6
 - data/lib/blizzard_api/wow/game_data/mythic_keystone_affix.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/mythic_keystone_leaderboard.rb +2 -2
 - data/lib/blizzard_api/wow/game_data/mythic_raid_leaderboard.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/pet.rb +4 -4
 - data/lib/blizzard_api/wow/game_data/playable_class.rb +4 -4
 - data/lib/blizzard_api/wow/game_data/playable_specialization.rb +2 -2
 - data/lib/blizzard_api/wow/game_data/profession.rb +4 -4
 - data/lib/blizzard_api/wow/game_data/pvp_season.rb +3 -3
 - data/lib/blizzard_api/wow/game_data/pvp_tier.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/quest.rb +6 -6
 - data/lib/blizzard_api/wow/game_data/reputation.rb +4 -4
 - data/lib/blizzard_api/wow/game_data/spell.rb +1 -1
 - data/lib/blizzard_api/wow/game_data/talent.rb +2 -2
 - data/lib/blizzard_api/wow/game_data/tech_talent.rb +57 -0
 - data/lib/blizzard_api/wow/game_data/wow_token.rb +1 -1
 - data/lib/blizzard_api/wow/profile/character_profile.rb +63 -49
 - data/lib/blizzard_api/wow/profile/guild.rb +8 -8
 - data/lib/blizzard_api/wow/profile/profile.rb +5 -5
 - data/lib/blizzard_api/wow/search/search_request.rb +1 -1
 - metadata +13 -8
 - data/.gitlab-ci.yml +0 -12
 
| 
         @@ -19,7 +19,7 @@ module BlizzardApi 
     | 
|
| 
       19 
19 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       20 
20 
     | 
    
         
             
                  #
         
     | 
| 
       21 
21 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       22 
     | 
    
         
            -
                  def get(raid, faction, options 
     | 
| 
      
 22 
     | 
    
         
            +
                  def get(raid, faction, **options)
         
     | 
| 
       23 
23 
     | 
    
         
             
                    opts = options.merge(namespace: :dynamic, ttl: CACHE_DAY)
         
     | 
| 
       24 
24 
     | 
    
         
             
                    api_request "#{base_url(:game_data)}/leaderboard/hall-of-fame/#{raid}/#{faction}", opts
         
     | 
| 
       25 
25 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -18,7 +18,7 @@ module BlizzardApi 
     | 
|
| 
       18 
18 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       19 
19 
     | 
    
         
             
                  #
         
     | 
| 
       20 
20 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       21 
     | 
    
         
            -
                  def media(id, options 
     | 
| 
      
 21 
     | 
    
         
            +
                  def media(id, **options)
         
     | 
| 
       22 
22 
     | 
    
         
             
                    api_request "#{base_url(:media)}/pet/#{id}", default_options.merge(options)
         
     | 
| 
       23 
23 
     | 
    
         
             
                  end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
         @@ -28,7 +28,7 @@ module BlizzardApi 
     | 
|
| 
       28 
28 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       29 
29 
     | 
    
         
             
                  #
         
     | 
| 
       30 
30 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       31 
     | 
    
         
            -
                  def abilities(options 
     | 
| 
      
 31 
     | 
    
         
            +
                  def abilities(**options)
         
     | 
| 
       32 
32 
     | 
    
         
             
                    api_request "#{endpoint_uri('ability')}/index", default_options.merge(options)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  end
         
     | 
| 
       34 
34 
     | 
    
         | 
| 
         @@ -40,7 +40,7 @@ module BlizzardApi 
     | 
|
| 
       40 
40 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       41 
41 
     | 
    
         
             
                  #
         
     | 
| 
       42 
42 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       43 
     | 
    
         
            -
                  def ability(id, options 
     | 
| 
      
 43 
     | 
    
         
            +
                  def ability(id, **options)
         
     | 
| 
       44 
44 
     | 
    
         
             
                    api_request "#{endpoint_uri('ability')}/#{id}", default_options.merge(options)
         
     | 
| 
       45 
45 
     | 
    
         
             
                  end
         
     | 
| 
       46 
46 
     | 
    
         | 
| 
         @@ -52,7 +52,7 @@ module BlizzardApi 
     | 
|
| 
       52 
52 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       53 
53 
     | 
    
         
             
                  #
         
     | 
| 
       54 
54 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       55 
     | 
    
         
            -
                  def ability_media(id, options 
     | 
| 
      
 55 
     | 
    
         
            +
                  def ability_media(id, **options)
         
     | 
| 
       56 
56 
     | 
    
         
             
                    api_request "#{base_url(:media)}/pet-ability/#{id}", default_options.merge(options)
         
     | 
| 
       57 
57 
     | 
    
         
             
                  end
         
     | 
| 
       58 
58 
     | 
    
         | 
| 
         @@ -17,7 +17,7 @@ module BlizzardApi 
     | 
|
| 
       17 
17 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       18 
18 
     | 
    
         
             
                  #
         
     | 
| 
       19 
19 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       20 
     | 
    
         
            -
                  def talent_slots(id, options 
     | 
| 
      
 20 
     | 
    
         
            +
                  def talent_slots(id, **options)
         
     | 
| 
       21 
21 
     | 
    
         
             
                    api_request "#{endpoint_uri}/#{id}/pvp-talent-slots", default_options.merge(options)
         
     | 
| 
       22 
22 
     | 
    
         
             
                  end
         
     | 
| 
       23 
23 
     | 
    
         | 
| 
         @@ -25,7 +25,7 @@ module BlizzardApi 
     | 
|
| 
       25 
25 
     | 
    
         
             
                  # @!macro complete
         
     | 
| 
       26 
26 
     | 
    
         
             
                  #
         
     | 
| 
       27 
27 
     | 
    
         
             
                  # @option options [Boolean] :classic If set to true, this method will call the classic version
         
     | 
| 
       28 
     | 
    
         
            -
                  def complete(options 
     | 
| 
      
 28 
     | 
    
         
            +
                  def complete(**options)
         
     | 
| 
       29 
29 
     | 
    
         
             
                    index_data = index options
         
     | 
| 
       30 
30 
     | 
    
         
             
                    [].tap do |classes|
         
     | 
| 
       31 
31 
     | 
    
         
             
                      index_data[:classes].each do |pclass|
         
     | 
| 
         @@ -45,7 +45,7 @@ module BlizzardApi 
     | 
|
| 
       45 
45 
     | 
    
         
             
                  # @option options [Boolean] :classic If set to true, this method will call the classic version
         
     | 
| 
       46 
46 
     | 
    
         
             
                  #
         
     | 
| 
       47 
47 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       48 
     | 
    
         
            -
                  def get(id, options 
     | 
| 
      
 48 
     | 
    
         
            +
                  def get(id, **options)
         
     | 
| 
       49 
49 
     | 
    
         
             
                    data = api_request "#{endpoint_uri}/#{id}", default_options.merge(options)
         
     | 
| 
       50 
50 
     | 
    
         
             
                    data[:icon] = get_class_icon data[:media], options
         
     | 
| 
       51 
51 
     | 
    
         
             
                    data
         
     | 
| 
         @@ -59,7 +59,7 @@ module BlizzardApi 
     | 
|
| 
       59 
59 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       60 
60 
     | 
    
         
             
                  #
         
     | 
| 
       61 
61 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       62 
     | 
    
         
            -
                  def media(id, options 
     | 
| 
      
 62 
     | 
    
         
            +
                  def media(id, **options)
         
     | 
| 
       63 
63 
     | 
    
         
             
                    api_request "#{base_url(:media)}/playable-class/#{id}", default_options.merge(options)
         
     | 
| 
       64 
64 
     | 
    
         
             
                  end
         
     | 
| 
       65 
65 
     | 
    
         | 
| 
         @@ -12,7 +12,7 @@ module BlizzardApi 
     | 
|
| 
       12 
12 
     | 
    
         
             
                class PlayableSpecialization < Wow::GenericDataEndpoint
         
     | 
| 
       13 
13 
     | 
    
         
             
                  ##
         
     | 
| 
       14 
14 
     | 
    
         
             
                  # @!macro complete
         
     | 
| 
       15 
     | 
    
         
            -
                  def complete(options 
     | 
| 
      
 15 
     | 
    
         
            +
                  def complete(**options)
         
     | 
| 
       16 
16 
     | 
    
         
             
                    index_data = index options
         
     | 
| 
       17 
17 
     | 
    
         
             
                    response_data = OpenStruct.new
         
     | 
| 
       18 
18 
     | 
    
         
             
                    response_data.character_specializations = character_data(index_data, options)
         
     | 
| 
         @@ -28,7 +28,7 @@ module BlizzardApi 
     | 
|
| 
       28 
28 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       29 
29 
     | 
    
         
             
                  #
         
     | 
| 
       30 
30 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       31 
     | 
    
         
            -
                  def media(id, options 
     | 
| 
      
 31 
     | 
    
         
            +
                  def media(id, **options)
         
     | 
| 
       32 
32 
     | 
    
         
             
                    api_request "#{base_url(:media)}/playable-specialization/#{id}", default_options.merge(options)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  end
         
     | 
| 
       34 
34 
     | 
    
         | 
| 
         @@ -18,7 +18,7 @@ module BlizzardApi 
     | 
|
| 
       18 
18 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       19 
19 
     | 
    
         
             
                  #
         
     | 
| 
       20 
20 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       21 
     | 
    
         
            -
                  def media(id, options 
     | 
| 
      
 21 
     | 
    
         
            +
                  def media(id, **options)
         
     | 
| 
       22 
22 
     | 
    
         
             
                    api_request "#{base_url(:media)}/profession/#{id}", default_options.merge(options)
         
     | 
| 
       23 
23 
     | 
    
         
             
                  end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
         @@ -31,7 +31,7 @@ module BlizzardApi 
     | 
|
| 
       31 
31 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       32 
32 
     | 
    
         
             
                  #
         
     | 
| 
       33 
33 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       34 
     | 
    
         
            -
                  def skill_tier(id, tier_id, options 
     | 
| 
      
 34 
     | 
    
         
            +
                  def skill_tier(id, tier_id, **options)
         
     | 
| 
       35 
35 
     | 
    
         
             
                    api_request "#{base_url(:game_data)}/profession/#{id}/skill-tier/#{tier_id}", default_options.merge(options)
         
     | 
| 
       36 
36 
     | 
    
         
             
                  end
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
         @@ -43,7 +43,7 @@ module BlizzardApi 
     | 
|
| 
       43 
43 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       44 
44 
     | 
    
         
             
                  #
         
     | 
| 
       45 
45 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       46 
     | 
    
         
            -
                  def recipe(id, options 
     | 
| 
      
 46 
     | 
    
         
            +
                  def recipe(id, **options)
         
     | 
| 
       47 
47 
     | 
    
         
             
                    api_request "#{base_url(:game_data)}/recipe/#{id}", default_options.merge(options)
         
     | 
| 
       48 
48 
     | 
    
         
             
                  end
         
     | 
| 
       49 
49 
     | 
    
         | 
| 
         @@ -55,7 +55,7 @@ module BlizzardApi 
     | 
|
| 
       55 
55 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       56 
56 
     | 
    
         
             
                  #
         
     | 
| 
       57 
57 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       58 
     | 
    
         
            -
                  def recipe_media(id, options 
     | 
| 
      
 58 
     | 
    
         
            +
                  def recipe_media(id, **options)
         
     | 
| 
       59 
59 
     | 
    
         
             
                    api_request "#{base_url(:media)}/recipe/#{id}", default_options.merge(options)
         
     | 
| 
       60 
60 
     | 
    
         
             
                  end
         
     | 
| 
       61 
61 
     | 
    
         | 
| 
         @@ -16,7 +16,7 @@ module BlizzardApi 
     | 
|
| 
       16 
16 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       17 
17 
     | 
    
         
             
                  #
         
     | 
| 
       18 
18 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       19 
     | 
    
         
            -
                  def leaderboards(season_id, options 
     | 
| 
      
 19 
     | 
    
         
            +
                  def leaderboards(season_id, **options)
         
     | 
| 
       20 
20 
     | 
    
         
             
                    api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/index", default_options.merge(options)
         
     | 
| 
       21 
21 
     | 
    
         
             
                  end
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
         @@ -26,7 +26,7 @@ module BlizzardApi 
     | 
|
| 
       26 
26 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       27 
27 
     | 
    
         
             
                  #
         
     | 
| 
       28 
28 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       29 
     | 
    
         
            -
                  def leaderboard(season_id, brackets, options 
     | 
| 
      
 29 
     | 
    
         
            +
                  def leaderboard(season_id, brackets, **options)
         
     | 
| 
       30 
30 
     | 
    
         
             
                    api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/#{brackets}", default_options.merge(options)
         
     | 
| 
       31 
31 
     | 
    
         
             
                  end
         
     | 
| 
       32 
32 
     | 
    
         | 
| 
         @@ -36,7 +36,7 @@ module BlizzardApi 
     | 
|
| 
       36 
36 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       37 
37 
     | 
    
         
             
                  #
         
     | 
| 
       38 
38 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       39 
     | 
    
         
            -
                  def rewards(season_id, options 
     | 
| 
      
 39 
     | 
    
         
            +
                  def rewards(season_id, **options)
         
     | 
| 
       40 
40 
     | 
    
         
             
                    api_request "#{endpoint_uri}/#{season_id}/pvp-reward/index", default_options.merge(options)
         
     | 
| 
       41 
41 
     | 
    
         
             
                  end
         
     | 
| 
       42 
42 
     | 
    
         | 
| 
         @@ -16,7 +16,7 @@ module BlizzardApi 
     | 
|
| 
       16 
16 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       17 
17 
     | 
    
         
             
                  #
         
     | 
| 
       18 
18 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       19 
     | 
    
         
            -
                  def categories(options 
     | 
| 
      
 19 
     | 
    
         
            +
                  def categories(**options)
         
     | 
| 
       20 
20 
     | 
    
         
             
                    api_request "#{endpoint_uri}/category/index", default_options.merge(options)
         
     | 
| 
       21 
21 
     | 
    
         
             
                  end
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
         @@ -27,7 +27,7 @@ module BlizzardApi 
     | 
|
| 
       27 
27 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       28 
28 
     | 
    
         
             
                  #
         
     | 
| 
       29 
29 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       30 
     | 
    
         
            -
                  def category(id, options 
     | 
| 
      
 30 
     | 
    
         
            +
                  def category(id, **options)
         
     | 
| 
       31 
31 
     | 
    
         
             
                    api_request "#{endpoint_uri}/category/#{id}", default_options.merge(options)
         
     | 
| 
       32 
32 
     | 
    
         
             
                  end
         
     | 
| 
       33 
33 
     | 
    
         | 
| 
         @@ -37,7 +37,7 @@ module BlizzardApi 
     | 
|
| 
       37 
37 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       38 
38 
     | 
    
         
             
                  #
         
     | 
| 
       39 
39 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       40 
     | 
    
         
            -
                  def areas(options 
     | 
| 
      
 40 
     | 
    
         
            +
                  def areas(**options)
         
     | 
| 
       41 
41 
     | 
    
         
             
                    api_request "#{endpoint_uri}/area/index", default_options.merge(options)
         
     | 
| 
       42 
42 
     | 
    
         
             
                  end
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
         @@ -48,7 +48,7 @@ module BlizzardApi 
     | 
|
| 
       48 
48 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       49 
49 
     | 
    
         
             
                  #
         
     | 
| 
       50 
50 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       51 
     | 
    
         
            -
                  def area(id, options 
     | 
| 
      
 51 
     | 
    
         
            +
                  def area(id, **options)
         
     | 
| 
       52 
52 
     | 
    
         
             
                    api_request "#{endpoint_uri}/area/#{id}", default_options.merge(options)
         
     | 
| 
       53 
53 
     | 
    
         
             
                  end
         
     | 
| 
       54 
54 
     | 
    
         | 
| 
         @@ -58,7 +58,7 @@ module BlizzardApi 
     | 
|
| 
       58 
58 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       59 
59 
     | 
    
         
             
                  #
         
     | 
| 
       60 
60 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       61 
     | 
    
         
            -
                  def types(options 
     | 
| 
      
 61 
     | 
    
         
            +
                  def types(**options)
         
     | 
| 
       62 
62 
     | 
    
         
             
                    api_request "#{endpoint_uri}/type/index", default_options.merge(options)
         
     | 
| 
       63 
63 
     | 
    
         
             
                  end
         
     | 
| 
       64 
64 
     | 
    
         | 
| 
         @@ -69,7 +69,7 @@ module BlizzardApi 
     | 
|
| 
       69 
69 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       70 
70 
     | 
    
         
             
                  #
         
     | 
| 
       71 
71 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       72 
     | 
    
         
            -
                  def type(id, options 
     | 
| 
      
 72 
     | 
    
         
            +
                  def type(id, **options)
         
     | 
| 
       73 
73 
     | 
    
         
             
                    api_request "#{endpoint_uri}/type/#{id}", default_options.merge(options)
         
     | 
| 
       74 
74 
     | 
    
         
             
                  end
         
     | 
| 
       75 
75 
     | 
    
         | 
| 
         @@ -32,7 +32,7 @@ module BlizzardApi 
     | 
|
| 
       32 
32 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       33 
33 
     | 
    
         
             
                  #
         
     | 
| 
       34 
34 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       35 
     | 
    
         
            -
                  def factions(options 
     | 
| 
      
 35 
     | 
    
         
            +
                  def factions(**options)
         
     | 
| 
       36 
36 
     | 
    
         
             
                    api_request "#{endpoint_uri('faction')}/index", default_options.merge(options)
         
     | 
| 
       37 
37 
     | 
    
         
             
                  end
         
     | 
| 
       38 
38 
     | 
    
         | 
| 
         @@ -43,7 +43,7 @@ module BlizzardApi 
     | 
|
| 
       43 
43 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       44 
44 
     | 
    
         
             
                  #
         
     | 
| 
       45 
45 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       46 
     | 
    
         
            -
                  def faction(id, options 
     | 
| 
      
 46 
     | 
    
         
            +
                  def faction(id, **options)
         
     | 
| 
       47 
47 
     | 
    
         
             
                    api_request "#{endpoint_uri('faction')}/#{id}", default_options.merge(options)
         
     | 
| 
       48 
48 
     | 
    
         
             
                  end
         
     | 
| 
       49 
49 
     | 
    
         | 
| 
         @@ -53,7 +53,7 @@ module BlizzardApi 
     | 
|
| 
       53 
53 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       54 
54 
     | 
    
         
             
                  #
         
     | 
| 
       55 
55 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       56 
     | 
    
         
            -
                  def tiers(options 
     | 
| 
      
 56 
     | 
    
         
            +
                  def tiers(**options)
         
     | 
| 
       57 
57 
     | 
    
         
             
                    api_request "#{endpoint_uri('tiers')}/index", default_options.merge(options)
         
     | 
| 
       58 
58 
     | 
    
         
             
                  end
         
     | 
| 
       59 
59 
     | 
    
         | 
| 
         @@ -64,7 +64,7 @@ module BlizzardApi 
     | 
|
| 
       64 
64 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       65 
65 
     | 
    
         
             
                  #
         
     | 
| 
       66 
66 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       67 
     | 
    
         
            -
                  def tier(id, options 
     | 
| 
      
 67 
     | 
    
         
            +
                  def tier(id, **options)
         
     | 
| 
       68 
68 
     | 
    
         
             
                    api_request "#{endpoint_uri('tiers')}/#{id}", default_options.merge(options)
         
     | 
| 
       69 
69 
     | 
    
         
             
                  end
         
     | 
| 
       70 
70 
     | 
    
         | 
| 
         @@ -16,7 +16,7 @@ module BlizzardApi 
     | 
|
| 
       16 
16 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       17 
17 
     | 
    
         
             
                  #
         
     | 
| 
       18 
18 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       19 
     | 
    
         
            -
                  def pvp_talents(options 
     | 
| 
      
 19 
     | 
    
         
            +
                  def pvp_talents(**options)
         
     | 
| 
       20 
20 
     | 
    
         
             
                    api_request "#{base_url(:game_data)}/pvp-talent/index", default_options.merge(options)
         
     | 
| 
       21 
21 
     | 
    
         
             
                  end
         
     | 
| 
       22 
22 
     | 
    
         | 
| 
         @@ -28,7 +28,7 @@ module BlizzardApi 
     | 
|
| 
       28 
28 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       29 
29 
     | 
    
         
             
                  #
         
     | 
| 
       30 
30 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       31 
     | 
    
         
            -
                  def pvp_talent(id, options 
     | 
| 
      
 31 
     | 
    
         
            +
                  def pvp_talent(id, **options)
         
     | 
| 
       32 
32 
     | 
    
         
             
                    api_request "#{base_url(:game_data)}/pvp-talent/#{id}", default_options.merge(options)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  end
         
     | 
| 
       34 
34 
     | 
    
         | 
| 
         @@ -0,0 +1,57 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module BlizzardApi
         
     | 
| 
      
 4 
     | 
    
         
            +
              module Wow
         
     | 
| 
      
 5 
     | 
    
         
            +
                ##
         
     | 
| 
      
 6 
     | 
    
         
            +
                # This class allows access to World of Warcraft talent data
         
     | 
| 
      
 7 
     | 
    
         
            +
                #
         
     | 
| 
      
 8 
     | 
    
         
            +
                # @see https://develop.battle.net/documentation/world-of-warcraft/game-data-apis
         
     | 
| 
      
 9 
     | 
    
         
            +
                #
         
     | 
| 
      
 10 
     | 
    
         
            +
                # You can get an instance of this class using the default region as follows:
         
     | 
| 
      
 11 
     | 
    
         
            +
                #   api_instance = BlizzardApi::Wow.talent
         
     | 
| 
      
 12 
     | 
    
         
            +
                class TechTalent < Wow::GenericDataEndpoint
         
     | 
| 
      
 13 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 14 
     | 
    
         
            +
                  # Fetch tech talent trees
         
     | 
| 
      
 15 
     | 
    
         
            +
                  #
         
     | 
| 
      
 16 
     | 
    
         
            +
                  # @!macro request_options
         
     | 
| 
      
 17 
     | 
    
         
            +
                  #
         
     | 
| 
      
 18 
     | 
    
         
            +
                  # @!macro response
         
     | 
| 
      
 19 
     | 
    
         
            +
                  def tech_talent_trees(**options)
         
     | 
| 
      
 20 
     | 
    
         
            +
                    api_request "#{base_url(:game_data)}/tech-talent-tree/index", default_options.merge(options)
         
     | 
| 
      
 21 
     | 
    
         
            +
                  end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 24 
     | 
    
         
            +
                  # Fetch a tech talent tree
         
     | 
| 
      
 25 
     | 
    
         
            +
                  #
         
     | 
| 
      
 26 
     | 
    
         
            +
                  # @param id [Integer] Tech talent id
         
     | 
| 
      
 27 
     | 
    
         
            +
                  #
         
     | 
| 
      
 28 
     | 
    
         
            +
                  # @!macro request_options
         
     | 
| 
      
 29 
     | 
    
         
            +
                  #
         
     | 
| 
      
 30 
     | 
    
         
            +
                  # @!macro response
         
     | 
| 
      
 31 
     | 
    
         
            +
                  def tech_talent_tree(id, **options)
         
     | 
| 
      
 32 
     | 
    
         
            +
                    api_request "#{base_url(:game_data)}/tech-talent-tree/#{id}", default_options.merge(options)
         
     | 
| 
      
 33 
     | 
    
         
            +
                  end
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
      
 35 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 36 
     | 
    
         
            +
                  # Fetch a tech talent media
         
     | 
| 
      
 37 
     | 
    
         
            +
                  #
         
     | 
| 
      
 38 
     | 
    
         
            +
                  # @param id [Integer] Tech talent id
         
     | 
| 
      
 39 
     | 
    
         
            +
                  #
         
     | 
| 
      
 40 
     | 
    
         
            +
                  # @!macro request_options
         
     | 
| 
      
 41 
     | 
    
         
            +
                  #
         
     | 
| 
      
 42 
     | 
    
         
            +
                  # @!macro response
         
     | 
| 
      
 43 
     | 
    
         
            +
                  def media(id, **options)
         
     | 
| 
      
 44 
     | 
    
         
            +
                    api_request "#{base_url(:media)}/tech-talent/#{id}", default_options.merge(options)
         
     | 
| 
      
 45 
     | 
    
         
            +
                  end
         
     | 
| 
      
 46 
     | 
    
         
            +
             
     | 
| 
      
 47 
     | 
    
         
            +
                  protected
         
     | 
| 
      
 48 
     | 
    
         
            +
             
     | 
| 
      
 49 
     | 
    
         
            +
                  def endpoint_setup
         
     | 
| 
      
 50 
     | 
    
         
            +
                    @endpoint = 'tech-talent'
         
     | 
| 
      
 51 
     | 
    
         
            +
                    @namespace = :static
         
     | 
| 
      
 52 
     | 
    
         
            +
                    @collection = 'tech-talents'
         
     | 
| 
      
 53 
     | 
    
         
            +
                    @ttl = CACHE_TRIMESTER
         
     | 
| 
      
 54 
     | 
    
         
            +
                  end
         
     | 
| 
      
 55 
     | 
    
         
            +
                end
         
     | 
| 
      
 56 
     | 
    
         
            +
              end
         
     | 
| 
      
 57 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -22,7 +22,7 @@ module BlizzardApi 
     | 
|
| 
       22 
22 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       23 
23 
     | 
    
         
             
                  #
         
     | 
| 
       24 
24 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       25 
     | 
    
         
            -
                  def get(realm, character, options 
     | 
| 
      
 25 
     | 
    
         
            +
                  def get(realm, character, **options)
         
     | 
| 
       26 
26 
     | 
    
         
             
                    character_request realm, character, options
         
     | 
| 
       27 
27 
     | 
    
         
             
                  end
         
     | 
| 
       28 
28 
     | 
    
         | 
| 
         @@ -36,8 +36,8 @@ module BlizzardApi 
     | 
|
| 
       36 
36 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       37 
37 
     | 
    
         
             
                  #
         
     | 
| 
       38 
38 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       39 
     | 
    
         
            -
                  def achievements(realm, character, options 
     | 
| 
       40 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 39 
     | 
    
         
            +
                  def achievements(realm, character, **options)
         
     | 
| 
      
 40 
     | 
    
         
            +
                    character_request realm, character, 'achievements', options
         
     | 
| 
       41 
41 
     | 
    
         
             
                  end
         
     | 
| 
       42 
42 
     | 
    
         | 
| 
       43 
43 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -50,8 +50,8 @@ module BlizzardApi 
     | 
|
| 
       50 
50 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       51 
51 
     | 
    
         
             
                  #
         
     | 
| 
       52 
52 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       53 
     | 
    
         
            -
                  def achievement_statistics(realm, character, options 
     | 
| 
       54 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 53 
     | 
    
         
            +
                  def achievement_statistics(realm, character, **options)
         
     | 
| 
      
 54 
     | 
    
         
            +
                    character_request realm, character, 'achievements/statistics', options
         
     | 
| 
       55 
55 
     | 
    
         
             
                  end
         
     | 
| 
       56 
56 
     | 
    
         | 
| 
       57 
57 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -64,8 +64,8 @@ module BlizzardApi 
     | 
|
| 
       64 
64 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       65 
65 
     | 
    
         
             
                  #
         
     | 
| 
       66 
66 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       67 
     | 
    
         
            -
                  def appearance(realm, character, options 
     | 
| 
       68 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 67 
     | 
    
         
            +
                  def appearance(realm, character, **options)
         
     | 
| 
      
 68 
     | 
    
         
            +
                    character_request realm, character, 'appearance', options
         
     | 
| 
       69 
69 
     | 
    
         
             
                  end
         
     | 
| 
       70 
70 
     | 
    
         | 
| 
       71 
71 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -78,8 +78,8 @@ module BlizzardApi 
     | 
|
| 
       78 
78 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       79 
79 
     | 
    
         
             
                  #
         
     | 
| 
       80 
80 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       81 
     | 
    
         
            -
                  def collections(realm, character, options 
     | 
| 
       82 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 81 
     | 
    
         
            +
                  def collections(realm, character, **options)
         
     | 
| 
      
 82 
     | 
    
         
            +
                    character_request realm, character, 'collections', options
         
     | 
| 
       83 
83 
     | 
    
         
             
                  end
         
     | 
| 
       84 
84 
     | 
    
         | 
| 
       85 
85 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -92,8 +92,8 @@ module BlizzardApi 
     | 
|
| 
       92 
92 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       93 
93 
     | 
    
         
             
                  #
         
     | 
| 
       94 
94 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       95 
     | 
    
         
            -
                  def pets(realm, character, options 
     | 
| 
       96 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 95 
     | 
    
         
            +
                  def pets(realm, character, **options)
         
     | 
| 
      
 96 
     | 
    
         
            +
                    character_request realm, character, 'collections/pets', options
         
     | 
| 
       97 
97 
     | 
    
         
             
                  end
         
     | 
| 
       98 
98 
     | 
    
         | 
| 
       99 
99 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -106,8 +106,8 @@ module BlizzardApi 
     | 
|
| 
       106 
106 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       107 
107 
     | 
    
         
             
                  #
         
     | 
| 
       108 
108 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       109 
     | 
    
         
            -
                  def mounts(realm, character, options 
     | 
| 
       110 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 109 
     | 
    
         
            +
                  def mounts(realm, character, **options)
         
     | 
| 
      
 110 
     | 
    
         
            +
                    character_request realm, character, 'collections/mounts', options
         
     | 
| 
       111 
111 
     | 
    
         
             
                  end
         
     | 
| 
       112 
112 
     | 
    
         | 
| 
       113 
113 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -120,8 +120,8 @@ module BlizzardApi 
     | 
|
| 
       120 
120 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       121 
121 
     | 
    
         
             
                  #
         
     | 
| 
       122 
122 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       123 
     | 
    
         
            -
                  def encounters(realm, character, options 
     | 
| 
       124 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 123 
     | 
    
         
            +
                  def encounters(realm, character, **options)
         
     | 
| 
      
 124 
     | 
    
         
            +
                    character_request realm, character, 'encounters', options
         
     | 
| 
       125 
125 
     | 
    
         
             
                  end
         
     | 
| 
       126 
126 
     | 
    
         | 
| 
       127 
127 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -134,8 +134,8 @@ module BlizzardApi 
     | 
|
| 
       134 
134 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       135 
135 
     | 
    
         
             
                  #
         
     | 
| 
       136 
136 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       137 
     | 
    
         
            -
                  def dungeons(realm, character, options 
     | 
| 
       138 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 137 
     | 
    
         
            +
                  def dungeons(realm, character, **options)
         
     | 
| 
      
 138 
     | 
    
         
            +
                    character_request realm, character, 'encounters/dungeons', options
         
     | 
| 
       139 
139 
     | 
    
         
             
                  end
         
     | 
| 
       140 
140 
     | 
    
         | 
| 
       141 
141 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -148,8 +148,8 @@ module BlizzardApi 
     | 
|
| 
       148 
148 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       149 
149 
     | 
    
         
             
                  #
         
     | 
| 
       150 
150 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       151 
     | 
    
         
            -
                  def raids(realm, character, options 
     | 
| 
       152 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 151 
     | 
    
         
            +
                  def raids(realm, character, **options)
         
     | 
| 
      
 152 
     | 
    
         
            +
                    character_request realm, character, 'encounters/raids', options
         
     | 
| 
       153 
153 
     | 
    
         
             
                  end
         
     | 
| 
       154 
154 
     | 
    
         | 
| 
       155 
155 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -162,8 +162,8 @@ module BlizzardApi 
     | 
|
| 
       162 
162 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       163 
163 
     | 
    
         
             
                  #
         
     | 
| 
       164 
164 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       165 
     | 
    
         
            -
                  def equipment(realm, character, options 
     | 
| 
       166 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 165 
     | 
    
         
            +
                  def equipment(realm, character, **options)
         
     | 
| 
      
 166 
     | 
    
         
            +
                    character_request realm, character, 'equipment', options
         
     | 
| 
       167 
167 
     | 
    
         
             
                  end
         
     | 
| 
       168 
168 
     | 
    
         | 
| 
       169 
169 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -176,8 +176,8 @@ module BlizzardApi 
     | 
|
| 
       176 
176 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       177 
177 
     | 
    
         
             
                  #
         
     | 
| 
       178 
178 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       179 
     | 
    
         
            -
                  def hunter_pets(realm, character, options 
     | 
| 
       180 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 179 
     | 
    
         
            +
                  def hunter_pets(realm, character, **options)
         
     | 
| 
      
 180 
     | 
    
         
            +
                    character_request realm, character, 'hunter-pets', options
         
     | 
| 
       181 
181 
     | 
    
         
             
                  end
         
     | 
| 
       182 
182 
     | 
    
         | 
| 
       183 
183 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -190,8 +190,8 @@ module BlizzardApi 
     | 
|
| 
       190 
190 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       191 
191 
     | 
    
         
             
                  #
         
     | 
| 
       192 
192 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       193 
     | 
    
         
            -
                  def media(realm, character, options 
     | 
| 
       194 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 193 
     | 
    
         
            +
                  def media(realm, character, **options)
         
     | 
| 
      
 194 
     | 
    
         
            +
                    character_request realm, character, 'character-media', options
         
     | 
| 
       195 
195 
     | 
    
         
             
                  end
         
     | 
| 
       196 
196 
     | 
    
         | 
| 
       197 
197 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -204,8 +204,8 @@ module BlizzardApi 
     | 
|
| 
       204 
204 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       205 
205 
     | 
    
         
             
                  #
         
     | 
| 
       206 
206 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       207 
     | 
    
         
            -
                  def mythic_keystone_profile(realm, character, options 
     | 
| 
       208 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 207 
     | 
    
         
            +
                  def mythic_keystone_profile(realm, character, **options)
         
     | 
| 
      
 208 
     | 
    
         
            +
                    character_request realm, character, 'mythic-keystone-profile', options
         
     | 
| 
       209 
209 
     | 
    
         
             
                  end
         
     | 
| 
       210 
210 
     | 
    
         | 
| 
       211 
211 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -219,8 +219,8 @@ module BlizzardApi 
     | 
|
| 
       219 
219 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       220 
220 
     | 
    
         
             
                  #
         
     | 
| 
       221 
221 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       222 
     | 
    
         
            -
                  def mythic_keystone_seasons(realm, character, season = nil, options 
     | 
| 
       223 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 222 
     | 
    
         
            +
                  def mythic_keystone_seasons(realm, character, season = nil, **options)
         
     | 
| 
      
 223 
     | 
    
         
            +
                    character_request realm, character, "mythic-keystone-profile/season/#{season}", options
         
     | 
| 
       224 
224 
     | 
    
         
             
                  end
         
     | 
| 
       225 
225 
     | 
    
         | 
| 
       226 
226 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -233,8 +233,8 @@ module BlizzardApi 
     | 
|
| 
       233 
233 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       234 
234 
     | 
    
         
             
                  #
         
     | 
| 
       235 
235 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       236 
     | 
    
         
            -
                  def professions(realm, character, options 
     | 
| 
       237 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 236 
     | 
    
         
            +
                  def professions(realm, character, **options)
         
     | 
| 
      
 237 
     | 
    
         
            +
                    character_request realm, character, 'professions', options
         
     | 
| 
       238 
238 
     | 
    
         
             
                  end
         
     | 
| 
       239 
239 
     | 
    
         | 
| 
       240 
240 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -248,8 +248,8 @@ module BlizzardApi 
     | 
|
| 
       248 
248 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       249 
249 
     | 
    
         
             
                  #
         
     | 
| 
       250 
250 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       251 
     | 
    
         
            -
                  def status(realm, character, options 
     | 
| 
       252 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 251 
     | 
    
         
            +
                  def status(realm, character, **options)
         
     | 
| 
      
 252 
     | 
    
         
            +
                    character_request realm, character, 'status', options
         
     | 
| 
       253 
253 
     | 
    
         
             
                  end
         
     | 
| 
       254 
254 
     | 
    
         | 
| 
       255 
255 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -263,8 +263,8 @@ module BlizzardApi 
     | 
|
| 
       263 
263 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       264 
264 
     | 
    
         
             
                  #
         
     | 
| 
       265 
265 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       266 
     | 
    
         
            -
                  def pvp_bracket(realm, character, bracket, options 
     | 
| 
       267 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 266 
     | 
    
         
            +
                  def pvp_bracket(realm, character, bracket, **options)
         
     | 
| 
      
 267 
     | 
    
         
            +
                    character_request realm, character, "pvp-bracket/#{bracket}", options
         
     | 
| 
       268 
268 
     | 
    
         
             
                  end
         
     | 
| 
       269 
269 
     | 
    
         | 
| 
       270 
270 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -277,8 +277,8 @@ module BlizzardApi 
     | 
|
| 
       277 
277 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       278 
278 
     | 
    
         
             
                  #
         
     | 
| 
       279 
279 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       280 
     | 
    
         
            -
                  def pvp_summary(realm, character, options 
     | 
| 
       281 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 280 
     | 
    
         
            +
                  def pvp_summary(realm, character, **options)
         
     | 
| 
      
 281 
     | 
    
         
            +
                    character_request realm, character, 'pvp-summary', options
         
     | 
| 
       282 
282 
     | 
    
         
             
                  end
         
     | 
| 
       283 
283 
     | 
    
         | 
| 
       284 
284 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -292,11 +292,11 @@ module BlizzardApi 
     | 
|
| 
       292 
292 
     | 
    
         
             
                  #   @option options [Boolean] :completed Should return completed quests
         
     | 
| 
       293 
293 
     | 
    
         
             
                  #
         
     | 
| 
       294 
294 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       295 
     | 
    
         
            -
                  def quests(realm, character, options 
     | 
| 
      
 295 
     | 
    
         
            +
                  def quests(realm, character, **options)
         
     | 
| 
       296 
296 
     | 
    
         
             
                    completed = options.delete(:completed) || false
         
     | 
| 
       297 
     | 
    
         
            -
                    return character_request realm, character,  
     | 
| 
      
 297 
     | 
    
         
            +
                    return character_request realm, character, 'quests/completed', options if completed
         
     | 
| 
       298 
298 
     | 
    
         | 
| 
       299 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 299 
     | 
    
         
            +
                    character_request realm, character, 'quests', options
         
     | 
| 
       300 
300 
     | 
    
         
             
                  end
         
     | 
| 
       301 
301 
     | 
    
         | 
| 
       302 
302 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -309,8 +309,22 @@ module BlizzardApi 
     | 
|
| 
       309 
309 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       310 
310 
     | 
    
         
             
                  #
         
     | 
| 
       311 
311 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       312 
     | 
    
         
            -
                  def reputation(realm, character, options 
     | 
| 
       313 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 312 
     | 
    
         
            +
                  def reputation(realm, character, **options)
         
     | 
| 
      
 313 
     | 
    
         
            +
                    character_request realm, character, 'reputations', options
         
     | 
| 
      
 314 
     | 
    
         
            +
                  end
         
     | 
| 
      
 315 
     | 
    
         
            +
             
     | 
| 
      
 316 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 317 
     | 
    
         
            +
                  # Return a character's soulbinds
         
     | 
| 
      
 318 
     | 
    
         
            +
                  #
         
     | 
| 
      
 319 
     | 
    
         
            +
                  # @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-profile-api
         
     | 
| 
      
 320 
     | 
    
         
            +
                  #
         
     | 
| 
      
 321 
     | 
    
         
            +
                  # @param realm [String] The character realm's slug
         
     | 
| 
      
 322 
     | 
    
         
            +
                  # @param character [String] The character name
         
     | 
| 
      
 323 
     | 
    
         
            +
                  # @!macro request_options
         
     | 
| 
      
 324 
     | 
    
         
            +
                  #
         
     | 
| 
      
 325 
     | 
    
         
            +
                  # @!macro response
         
     | 
| 
      
 326 
     | 
    
         
            +
                  def soulbinds(realm, character, **options)
         
     | 
| 
      
 327 
     | 
    
         
            +
                    character_request realm, character, 'soulbinds', options
         
     | 
| 
       314 
328 
     | 
    
         
             
                  end
         
     | 
| 
       315 
329 
     | 
    
         | 
| 
       316 
330 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -323,8 +337,8 @@ module BlizzardApi 
     | 
|
| 
       323 
337 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       324 
338 
     | 
    
         
             
                  #
         
     | 
| 
       325 
339 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       326 
     | 
    
         
            -
                  def specializations(realm, character, options 
     | 
| 
       327 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 340 
     | 
    
         
            +
                  def specializations(realm, character, **options)
         
     | 
| 
      
 341 
     | 
    
         
            +
                    character_request realm, character, 'specializations', options
         
     | 
| 
       328 
342 
     | 
    
         
             
                  end
         
     | 
| 
       329 
343 
     | 
    
         | 
| 
       330 
344 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -337,8 +351,8 @@ module BlizzardApi 
     | 
|
| 
       337 
351 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       338 
352 
     | 
    
         
             
                  #
         
     | 
| 
       339 
353 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       340 
     | 
    
         
            -
                  def statistics(realm, character, options 
     | 
| 
       341 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 354 
     | 
    
         
            +
                  def statistics(realm, character, **options)
         
     | 
| 
      
 355 
     | 
    
         
            +
                    character_request realm, character, 'statistics', options
         
     | 
| 
       342 
356 
     | 
    
         
             
                  end
         
     | 
| 
       343 
357 
     | 
    
         | 
| 
       344 
358 
     | 
    
         
             
                  ##
         
     | 
| 
         @@ -351,8 +365,8 @@ module BlizzardApi 
     | 
|
| 
       351 
365 
     | 
    
         
             
                  # @!macro request_options
         
     | 
| 
       352 
366 
     | 
    
         
             
                  #
         
     | 
| 
       353 
367 
     | 
    
         
             
                  # @!macro response
         
     | 
| 
       354 
     | 
    
         
            -
                  def titles(realm, character, options 
     | 
| 
       355 
     | 
    
         
            -
                    character_request realm, character,  
     | 
| 
      
 368 
     | 
    
         
            +
                  def titles(realm, character, **options)
         
     | 
| 
      
 369 
     | 
    
         
            +
                    character_request realm, character, 'titles', options
         
     | 
| 
       356 
370 
     | 
    
         
             
                  end
         
     | 
| 
       357 
371 
     | 
    
         | 
| 
       358 
372 
     | 
    
         
             
                  private
         
     | 
| 
         @@ -363,7 +377,7 @@ module BlizzardApi 
     | 
|
| 
       363 
377 
     | 
    
         
             
                    opts
         
     | 
| 
       364 
378 
     | 
    
         
             
                  end
         
     | 
| 
       365 
379 
     | 
    
         | 
| 
       366 
     | 
    
         
            -
                  def character_request(realm, character,  
     | 
| 
      
 380 
     | 
    
         
            +
                  def character_request(realm, character, variant = nil, **options)
         
     | 
| 
       367 
381 
     | 
    
         
             
                    uri = "#{base_url(:profile)}/character/#{string_to_slug(realm)}/#{string_to_slug(character)}"
         
     | 
| 
       368 
382 
     | 
    
         
             
                    uri += "/#{variant}" if variant
         
     | 
| 
       369 
383 
     | 
    
         
             
                    api_request uri, default_options.merge(options)
         
     |