Sha256: dc917b24e59b561db940097068c4d7135d32bd3740f9873d85d3c683b2dbf5f9

Contents?: true

Size: 758 Bytes

Versions: 4

Compression:

Stored size: 758 Bytes

Contents

# frozen_string_literal: true

module Regio
  class Geocode < Core
    def results
      raise Unprocessable, response[:message] if response[:message]

      response.merge(
        collection: response[:data]&.map { |result| transform(result) } || []
      )
    end

    private

    def response
      @response ||= run('/geocode', options)
    end

    # NOTE: all options described in the documentation
    # https://api.regio.ee/documentation/#docs/geocode
    def default_options
      {
        country: 'ee',
        apikey: Configuration.api_key,
        address_format: 'long_address',
        details: 'id,address,postcode,type,components,geometry,is_valid,is_complete',
        output_format: 'json',
        limit: 25
      }
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
regio-0.3.3 lib/regio/geocode.rb
regio-0.3.2 lib/regio/geocode.rb
regio-0.3.1 lib/regio/geocode.rb
regio-0.3.0 lib/regio/geocode.rb