Current section
Files
Jump to
Current section
Files
lib/mix/tasks/compile.roads.ex
defmodule Mix.Tasks.Compile.Roads do
@default_config [
out_file: "web/static/js/roads.js",
camelcase: false,
global_name: nil
]
def run(_args) do
router
|> routes
|> Roads.compile(config)
|> Roads.install(config)
end
defp router do
Module.concat(Mix.Phoenix.base(), "Router")
end
def config do
result = (Mix.Project.config[:app] |> Application.get_env(:roads)) || []
Keyword.merge(@default_config, result)
end
defp routes(router) do
router.__routes__
end
end