Packages
ash_phoenix
2.3.8
2.3.24
2.3.23
2.3.22
2.3.21
2.3.20
2.3.19
2.3.18
2.3.17
2.3.16
2.3.15
2.3.14
2.3.13
2.3.12
2.3.11
2.3.10
2.3.9
2.3.8
2.3.7
2.3.6
2.3.5
2.3.4
2.3.3
2.3.2
2.3.1
2.3.0
2.2.0
2.1.26
2.1.25
2.1.24
2.1.23
2.1.22
2.1.21
2.1.20
2.1.19
2.1.18
2.1.17
2.1.16
2.1.15
2.1.14
2.1.13
2.1.12
2.1.11
2.1.10
2.1.9
2.1.8
2.1.7
2.1.6
2.1.5
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.4
2.0.3
2.0.2
2.0.1
2.0.0
2.0.0-rc.8
2.0.0-rc.7
2.0.0-rc.6
2.0.0-rc.5
2.0.0-rc.4
2.0.0-rc.3
2.0.0-rc.2
2.0.0-rc.1
2.0.0-rc.0
1.3.7
1.3.6
1.3.5
1.3.4
1.3.3
1.3.2
1.3.1
1.3.0
1.2.26
1.2.25
1.2.24
1.2.23
1.2.22
1.2.21
1.2.20
1.2.19
1.2.18
1.2.17
1.2.16
1.2.15
1.2.14
1.2.13
1.2.12
1.2.11
1.2.10
1.2.9
1.2.8
1.2.7
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.1.2
1.1.1
1.1.0
1.1.0-rc.3
1.1.0-rc.2
1.1.0-rc.1
1.1.0-rc.0
1.0.0-rc.1
1.0.0-rc.0
1.0.0-pre.2
1.0.0-pre.1
1.0.0-pre.0
0.7.7
0.7.6-rc.0
0.7.5
0.7.4
0.7.3
0.7.2-rc.2
0.7.2-rc.1
0.7.2-rc.0
0.7.1
0.7.0
0.6.0-rc.7
0.6.0-rc.6
0.6.0-rc.5
0.6.0-rc.4
0.6.0-rc.3
0.6.0-rc.2
0.6.0-rc.1
0.6.0-rc.0
0.5.19-rc.2
0.5.19-rc.1
0.5.19-rc.0
0.5.18
0.5.17
0.5.16
0.5.15
0.5.14
0.5.13
0.5.12
0.5.11
0.5.10
0.5.9
0.5.8
0.5.7
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.24
0.4.23
0.4.23-rc.1
0.4.23-rc.0
0.4.22-rc2
0.4.22-rc1
0.4.21
0.4.20
0.4.19
0.4.18
0.4.17
0.4.16
0.4.15
0.4.14
0.4.13
0.4.12
0.4.11
0.4.10
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.3.2
0.3.1
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
Utilities for integrating Ash and Phoenix
Current section
Files
Jump to
Current section
Files
ash_phoenix
mix.exs
mix.exs
defmodule AshPhoenix.MixProject do
use Mix.Project
@description """
Utilities for integrating Ash and Phoenix
"""
@version "2.3.8"
def project do
[
app: :ash_phoenix,
version: @version,
description: @description,
elixir: "~> 1.11",
start_permanent: Mix.env() == :prod,
deps: deps(),
elixirc_paths: elixirc_paths(Mix.env()),
start_permanent: Mix.env() == :prod,
aliases: aliases(),
docs: &docs/0,
preferred_cli_env: [
coveralls: :test,
"coveralls.github": :test
],
dialyzer: [
plt_add_apps: [:ex_unit, :mix]
],
package: package(),
source_url: "https://github.com/ash-project/ash_phoenix",
homepage_url: "https://github.com/ash-project/ash_phoenix"
]
end
defp elixirc_paths(:test) do
["test/support/", "lib/"]
end
defp elixirc_paths(_env) do
["lib/"]
end
defp package do
[
name: :ash_phoenix,
licenses: ["MIT"],
files: ~w(lib .formatter.exs mix.exs README* LICENSE*
CHANGELOG* documentation priv usage-rules.md),
links: %{
GitHub: "https://github.com/ash-project/ash_phoenix"
}
]
end
defp docs do
[
main: "readme",
source_ref: "v#{@version}",
logo: "logos/small-logo.png",
extras: [
{"README.md", title: "Home"},
"documentation/tutorials/getting-started-with-ash-and-phoenix.md",
"documentation/topics/union-forms.md",
"documentation/topics/nested-forms.md",
{"documentation/dsls/DSL-AshPhoenix.md",
search_data: Spark.Docs.search_data_for(AshPhoenix)},
"CHANGELOG.md"
],
groups_for_extras: [
Tutorials: ~r'documentation/tutorials',
"How To": ~r'documentation/how_to',
Topics: ~r'documentation/topics',
"About AshPhoenix": [
"CHANGELOG.md"
],
Reference: [
~r"documentation/topics/reference",
~r"documentation/dsls"
]
],
before_closing_head_tag: fn type ->
if type == :html do
"""
<script>
if (location.hostname === "hexdocs.pm") {
var script = document.createElement("script");
script.src = "https://plausible.io/js/script.js";
script.setAttribute("defer", "defer")
script.setAttribute("data-domain", "ashhexdocs")
document.head.appendChild(script);
}
</script>
"""
end
end,
groups_for_modules: [
"Phoenix Helpers": [
AshPhoenix.LiveView,
AshPhoenix.SubdomainPlug
],
Generators: [
Mix.Tasks.AshPhoenix.Gen.Html,
Mix.Tasks.AshPhoenix.Gen.Live
],
Forms: [
AshPhoenix.Form,
AshPhoenix.Form.Auto,
AshPhoenix.Form.WrappedValue,
AshPhoenix.FormData.Error
],
FilterForm: [
AshPhoenix.FilterForm,
AshPhoenix.FilterForm.Predicate,
AshPhoenix.FilterForm.Arguments
],
Errors: [
AshPhoenix.Form.InvalidPath,
AshPhoenix.Form.NoActionConfigured,
AshPhoenix.Form.NoDataLoaded,
AshPhoenix.Form.NoFormConfigured,
AshPhoenix.Form.NoResourceConfigured
]
],
Internals: ~r/.*/
]
end
def application do
[
extra_applications: [:logger]
]
end
# Run "mix help deps" to learn about dependencies.
defp deps do
[
{:ash, ash_version("~> 3.5 and >= 3.5.13")},
{:phoenix, "~> 1.5.6 or ~> 1.6"},
{:phoenix_html, "~> 4.0"},
{:phoenix_live_view, "~> 0.20.3 or ~> 1.0 or ~> 1.0.0-rc.1"},
{:spark, "~> 2.1 and >= 2.2.29"},
{:inertia, "~> 2.3", optional: true},
{:simple_sat, "~> 0.1", only: [:dev, :test]},
{:git_ops, "~> 2.5", only: [:dev, :test]},
{:ex_doc, "~> 0.32", only: [:dev, :test], override: true},
{:makeup_eex, ">= 0.0.0", only: :dev, runtime: false},
{:makeup_html, "~> 0.2", only: :dev, runtime: false},
{:ex_check, "~> 0.14", only: [:dev, :test]},
{:credo, ">= 0.0.0", only: [:dev, :test], runtime: false},
{:dialyxir, ">= 0.0.0", only: [:dev, :test], runtime: false},
{:sobelow, ">= 0.0.0", only: [:dev, :test], runtime: false},
{:mix_audit, ">= 0.0.0", only: [:dev, :test], runtime: false},
{:mix_test_watch, "~> 1.0", only: [:dev, :test]},
# Code Generators
{:igniter, "~> 0.6", optional: true}
]
end
defp ash_version(default_version) do
case System.get_env("ASH_VERSION") do
nil -> default_version
"local" -> [path: "../ash"]
"main" -> [git: "https://github.com/ash-project/ash.git"]
version -> "~> #{version}"
end
end
defp aliases do
[
sobelow: "sobelow --skip -i Config.Secrets --ignore-files lib/ash_phoenix/gen/live.ex",
docs: [
"spark.cheat_sheets",
"docs",
"spark.replace_doc_links"
],
credo: "credo --strict",
format: "format",
"spark.cheat_sheets_in_search": "spark.cheat_sheets_in_search --extensions AshPhoenix",
"spark.formatter": "spark.formatter --extensions AshPhoenix",
"spark.cheat_sheets": "spark.cheat_sheets --extensions AshPhoenix"
]
end
end