defmodule SudregEx.MixProject do
use Mix.Project
@version "0.1.0"
@source_url "https://gitlab.com/banianitc/sudreg_ex"
def project do
[
app: :sudreg_ex,
version: @version,
elixir: "~> 1.16",
start_permanent: Mix.env() == :prod,
deps: deps(),
description: description(),
package: package(),
docs: docs(),
name: "sudreg_ex",
source_url: @source_url
]
end
def application do
[
extra_applications: [:logger],
mod: {SudregEx.Application, []}
]
end
defp deps do
[
{:req, "~> 0.5"},
{:plug, "~> 1.0", only: :test},
{:ex_doc, "~> 0.34", only: :dev, runtime: false}
]
end
defp description do
"Elixir client for the Croatian Court Register (Sudski registar) open-data REST API."
end
defp package do
[
licenses: ["MIT"],
links: %{
"GitLab" => @source_url,
"Sudski registar API" => "https://sudreg-data.gov.hr/"
},
# Ship the machine-readable OpenAPI spec (a useful reference); the larger
# developer-guide PDF stays in the repo and is linked, not shipped.
files:
~w(lib priv/doc/open_api_javni_v3.json mix.exs README.md CHANGELOG.md LICENSE .formatter.exs)
]
end
defp docs do
[
main: "readme",
extras: ["README.md", "CHANGELOG.md"],
source_ref: "v#{@version}",
# GitLab uses /-/blob/ (ExDoc defaults to GitHub's /blob/).
source_url_pattern: "#{@source_url}/-/blob/v#{@version}/%{path}#L%{line}",
groups_for_modules: [
Core: [SudregEx, SudregEx.Client, SudregEx.Auth, SudregEx.TokenCache, SudregEx.Token],
Endpoints: [SudregEx.Api],
"Requests & responses": [SudregEx.Request, SudregEx.Response, SudregEx.Error],
Helpers: [SudregEx.Format, SudregEx.RateLimiter]
]
]
end
end