Packages

A package to query Brazilian CEP codes. Has support for multiple source APIs (Correios, ViaCep, Postmon, etc). It can query one specific source or query until one source returns a valid result.

Current section

Files

Jump to
cep lib cep sources base.ex
Raw

lib/cep/sources/base.ex

defmodule Cep.Sources.Base do
defmacro __using__(_) do
quote do
defp translate_keys(result) do
key_map = %{
"localidade" => "city",
"cidade" => "city",
"estado" => "state",
"uf" => "state",
"nome" => "name",
"bairro" => "neighborhood",
"complemento" => "complement",
"logradouro" => "street",
}
translated_map = for {key, value} <- result, into: %{} do
{Map.get(key_map, key, key), value}
end
end
defp cep_not_found do
{:not_found, "CEP not found."}
end
end
end
end