2022-03-28 10:26:35 +13:00
|
|
|
defmodule AshHqWeb.Routes do
|
2022-03-29 08:47:43 +13:00
|
|
|
def guide_link(library, version, guide) do
|
|
|
|
"/docs/guides/#{library.name}/#{version}/#{guide}"
|
|
|
|
end
|
|
|
|
|
2022-03-28 10:26:35 +13:00
|
|
|
def library_link(library, name) do
|
|
|
|
"/docs/dsl/#{library.name}/#{name}"
|
|
|
|
end
|
|
|
|
|
|
|
|
def extension_link(library, name, extension) do
|
|
|
|
"/docs/dsl/#{library.name}/#{name}/#{extension}"
|
|
|
|
end
|
|
|
|
|
2022-03-29 08:47:43 +13:00
|
|
|
def doc_link(%AshHq.Docs.Guide{
|
|
|
|
url_safe_name: url_safe_name,
|
|
|
|
library_version: %{library_name: library_name, version: version}
|
|
|
|
}) do
|
|
|
|
"/docs/guides/#{library_name}/#{version}/#{url_safe_name}"
|
|
|
|
end
|
|
|
|
|
2022-03-28 10:26:35 +13:00
|
|
|
def doc_link(%AshHq.Docs.LibraryVersion{library_name: library_name, version: version}) do
|
|
|
|
"/docs/dsl/#{library_name}/#{version}"
|
|
|
|
end
|
|
|
|
|
|
|
|
def doc_link(item) do
|
|
|
|
case item.path do
|
|
|
|
[] ->
|
|
|
|
"/docs/dsl/#{item.library_name}/#{item.version_name}/#{item.extension_name}"
|
|
|
|
|
|
|
|
path ->
|
|
|
|
"/docs/dsl/#{item.library_name}/#{item.version_name}/#{item.extension_name}?path=#{Enum.join(path, ".")}"
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|