Module: PokeApi

Defined in:
lib/poke-api-v2.rb,
lib/poke_api/item.rb,
lib/poke_api/move.rb,
lib/poke_api/stat.rb,
lib/poke_api/type.rb,
lib/config/version.rb,
lib/poke_api/berry.rb,
lib/poke_api/gender.rb,
lib/poke_api/nature.rb,
lib/poke_api/region.rb,
lib/poke_api/ability.rb,
lib/poke_api/machine.rb,
lib/poke_api/pokedex.rb,
lib/poke_api/pokemon.rb,
lib/poke_api/version.rb,
lib/poke_api/location.rb,
lib/poke_api/egg_group.rb,
lib/poke_api/generation.rb,
lib/poke_api/common/name.rb,
lib/poke_api/growth_rate.rb,
lib/poke_api/item_pocket.rb,
lib/poke_api/move_target.rb,
lib/poke_api/berry_flavor.rb,
lib/poke_api/contest_type.rb,
lib/poke_api/move_ailment.rb,
lib/poke_api/pokemon_form.rb,
lib/poke_api/common/effect.rb,
lib/poke_api/item_category.rb,
lib/poke_api/location_area.rb,
lib/poke_api/move_category.rb,
lib/poke_api/pal_park_area.rb,
lib/poke_api/pokemon_color.rb,
lib/poke_api/pokemon_shape.rb,
lib/poke_api/version_group.rb,
lib/poke_api/berry_firmness.rb,
lib/poke_api/characteristic.rb,
lib/poke_api/contest_effect.rb,
lib/poke_api/item_attribute.rb,
lib/poke_api/evolution_chain.rb,
lib/poke_api/pokeathlon_stat.rb,
lib/poke_api/pokemon_habitat.rb,
lib/poke_api/pokemon_species.rb,
lib/poke_api/common/encounter.rb,
lib/poke_api/encounter_method.rb,
lib/poke_api/utility/language.rb,
lib/poke_api/api_resource_list.rb,
lib/poke_api/evolution_trigger.rb,
lib/poke_api/item/item_sprites.rb,
lib/poke_api/item_fling_effect.rb,
lib/poke_api/move_battle_style.rb,
lib/poke_api/move_damage_class.rb,
lib/poke_api/move_learn_method.rb,
lib/poke_api/type/type_pokemon.rb,
lib/poke_api/common/description.rb,
lib/poke_api/common/flavor_text.rb,
lib/poke_api/named_api_resource.rb,
lib/poke_api/encounter_condition.rb,
lib/poke_api/move/move_meta_data.rb,
lib/poke_api/type/type_relations.rb,
lib/poke_api/pokemon/pokemon_move.rb,
lib/poke_api/pokemon/pokemon_stat.rb,
lib/poke_api/pokemon/pokemon_type.rb,
lib/poke_api/super_contest_effect.rb,
lib/poke_api/common/verbose_effect.rb,
lib/poke_api/move/move_flavor_text.rb,
lib/poke_api/move/move_stat_change.rb,
lib/poke_api/pokedex/pokemon_entry.rb,
lib/poke_api/pokemon_species/genus.rb,
lib/poke_api/stat/move_stat_affect.rb,
lib/poke_api/berry/berry_flavor_map.rb,
lib/poke_api/ability/ability_pokemon.rb,
lib/poke_api/move/contest_combo_sets.rb,
lib/poke_api/pokemon/pokemon_ability.rb,
lib/poke_api/pokemon/pokemon_sprites.rb,
lib/poke_api/item/item_holder_pokemon.rb,
lib/poke_api/common/version_game_index.rb,
lib/poke_api/encounter_condition_value.rb,
lib/poke_api/move/contest_combo_detail.rb,
lib/poke_api/move/past_move_stat_value.rb,
lib/poke_api/nature/nature_stat_change.rb,
lib/poke_api/pokemon/pokemon_held_item.rb,
lib/poke_api/pokemon_shape/awesome_name.rb,
lib/poke_api/stat/move_stat_affect_sets.rb,
lib/poke_api/ability/ability_flavor_text.rb,
lib/poke_api/common/generation_game_index.rb,
lib/poke_api/pokemon/pokemon_move_version.rb,
lib/poke_api/stat/nature_stat_affect_sets.rb,
lib/poke_api/ability/ability_effect_change.rb,
lib/poke_api/berry_flavor/flavor_berry_map.rb,
lib/poke_api/common/machine_version_detail.rb,
lib/poke_api/gender/pokemon_species_gender.rb,
lib/poke_api/common/version_encounter_detail.rb,
lib/poke_api/location_area/pokemon_encounter.rb,
lib/poke_api/pokemon/location_area_encounter.rb,
lib/poke_api/common/version_group_flavor_text.rb,
lib/poke_api/evolution_chain/evolution_detail.rb,
lib/poke_api/pokemon/pokemon_held_item_version.rb,
lib/poke_api/pokemon_form/pokemon_form_sprites.rb,
lib/poke_api/location_area/encounter_method_rate.rb,
lib/poke_api/nature/move_battle_style_preference.rb,
lib/poke_api/item/item_holder_pokemon_version_detail.rb,
lib/poke_api/pokemon_species/pal_park_encounter_area.rb,
lib/poke_api/pokemon_species/pokemon_species_variety.rb,
lib/poke_api/growth_rate/growth_rate_experience_level.rb,
lib/poke_api/pal_park_area/pal_park_encounter_species.rb,
lib/poke_api/pokemon_species/pokemon_species_dex_entry.rb,
lib/poke_api/pokeathlon_stat/nature_pokeathlon_stat_affect.rb,
lib/poke_api/pokeathlon_stat/nature_pokeathlon_stat_affect_sets.rb,
lib/poke_api/location_area/encounter_method_rate/encounter_version_detail.rb

Overview

Main module for gem operation

Defined Under Namespace

Modules: Common, Utility Classes: Ability, ApiResourceList, Berry, BerryFirmness, BerryFlavor, Characteristic, ContestEffect, ContestType, EggGroup, EncounterCondition, EncounterConditionValue, EncounterMethod, EvolutionChain, EvolutionTrigger, Gender, Generation, GrowthRate, Item, ItemAttribute, ItemCategory, ItemFlingEffect, ItemPocket, Location, LocationArea, Machine, Move, MoveAilment, MoveBattleStyle, MoveCategory, MoveDamageClass, MoveLearnMethod, MoveTarget, NamedApiResource, Nature, PalParkArea, PokeathlonStat, Pokedex, Pokemon, PokemonColor, PokemonForm, PokemonHabitat, PokemonShape, PokemonSpecies, Region, Stat, SuperContestEffect, Type, Version, VersionGroup

Constant Summary collapse

VERSION =
'0.1.1'.freeze

Class Method Summary collapse

Class Method Details

.get(unnamed_resource = nil, **endpoint_opts) ⇒ Object



6
7
8
9
10
11
12
# File 'lib/poke-api-v2.rb', line 6

def get(unnamed_resource = nil, **endpoint_opts)
  endpoints = sanitize_endpoints(unnamed_resource, endpoint_opts)
  endpoints.map do |key, value|
    klass = value.class == Hash ? ApiResourceList : ENDPOINT_OBJECTS[key]
    klass.new(Fetcher.call(key, value))
  end.first
end

.pokedex(query = nil) ⇒ Object



14
15
16
17
# File 'lib/poke-api-v2.rb', line 14

def pokedex(query = nil)
  query ||= (rand(POKEMON_COUNT) + 1)
  get(pokemon: query)
end