Casefy
Usage
camel_case
Casefy.camel_case(%{camel_case: 1, nested_case: %{ another_case: 1 }})
# returns %{ "camelCase" => 1, "nestedCase" => %{ "anotherCase" => 1 } }snake_case
Casefy.snake_case(%{snakeCase: 1, nestedCase: %{anotherCase: 1}})
# returns %{ "snake_case" => 1, "nested_case" => %{ "another_case" => 1 } }Plug
On your Router, use:
pipeline :api do
plug :accepts, ["json"]
...
plug Casefy.Plug, fields: [:query_params, :params, :body_params] # parses all camelCase input to snake_case inside your controller
endTests
mix testsInstallation
Available on Hex, the package can be installed
by adding casefy to your list of dependencies in mix.exs:
def deps do
[
{:casefy, "~> 0.1.2"}
]
end