Packages
ash_phoenix
1.2.25
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
192 Versions
Jump to
Current section
192 Versions
Compare versions
6
files changed
+49
additions
-45
deletions
| @@ -5,6 +5,17 @@ See [Conventional Commits](Https://conventionalcommits.org) for commit guideline | |
| 5 5 | |
| 6 6 | <!-- changelog --> |
| 7 7 | |
| 8 | + ## [v1.2.25](https://github.com/ash-project/ash_phoenix/compare/v1.2.24...v1.2.25) (2024-01-02) |
| 9 | + |
| 10 | + |
| 11 | + |
| 12 | + |
| 13 | + ### Bug Fixes: |
| 14 | + |
| 15 | + * remove system added error vars to ensure deduplication works properly |
| 16 | + |
| 17 | + * ensure next page is detected for offset pages w/ more?: true |
| 18 | + |
| 8 19 | ## [v1.2.24](https://github.com/ash-project/ash_phoenix/compare/v1.2.23...v1.2.24) (2023-12-12) |
| @@ -2,7 +2,7 @@ | |
| 2 2 | |
| 3 3 | The AshPhoenix plugin adds lots of helpers for working with Phoenix Liveview (and regular views). |
| 4 4 | |
| 5 | - `{:ash_phoenix, "~> 1.2.24"}` |
| 5 | + `{:ash_phoenix, "~> 1.2.25"}` |
| 6 6 | |
| 7 7 | Check out the [getting started with phoenix guide](/documentation/tutorials/getting-started-with-ash-and-phoenix.md) for setup. |
| @@ -1,52 +1,52 @@ | |
| 1 1 | {<<"links">>, |
| 2 2 | [{<<"GitHub">>,<<"https://github.com/ash-project/ash_phoenix">>}]}. |
| 3 3 | {<<"name">>,<<"ash_phoenix">>}. |
| 4 | - {<<"version">>,<<"1.2.24">>}. |
| 4 | + {<<"version">>,<<"1.2.25">>}. |
| 5 5 | {<<"description">>,<<"Utilities for integrating Ash with Phoenix">>}. |
| 6 6 | {<<"elixir">>,<<"~> 1.11">>}. |
| 7 7 | {<<"app">>,<<"ash_phoenix">>}. |
| 8 8 | {<<"licenses">>,[<<"MIT">>]}. |
| 9 9 | {<<"files">>, |
| 10 | - [<<"lib">>,<<"lib/ash_phoenix.ex">>,<<"lib/ash_phoenix">>, |
| 11 | - <<"lib/ash_phoenix/gen">>,<<"lib/ash_phoenix/gen/live.ex">>, |
| 12 | - <<"lib/ash_phoenix/gen/gen.ex">>,<<"lib/ash_phoenix/live_view.ex">>, |
| 13 | - <<"lib/ash_phoenix/filter_form">>, |
| 14 | - <<"lib/ash_phoenix/filter_form/filter_form.ex">>, |
| 15 | - <<"lib/ash_phoenix/filter_form/predicate.ex">>, |
| 16 | - <<"lib/ash_phoenix/filter_form/arguments.ex">>, |
| 17 | - <<"lib/ash_phoenix/form_data">>,<<"lib/ash_phoenix/form_data/error.ex">>, |
| 18 | - <<"lib/ash_phoenix/form_data/helpers.ex">>,<<"lib/ash_phoenix/plug">>, |
| 19 | - <<"lib/ash_phoenix/plug/exception.ex">>, |
| 20 | - <<"lib/ash_phoenix/plug/subdomain_plug.ex">>,<<"lib/ash_phoenix/types">>, |
| 21 | - <<"lib/ash_phoenix/types/ci_string.ex">>, |
| 22 | - <<"lib/ash_phoenix/types/decimal.ex">>, |
| 23 | - <<"lib/ash_phoenix/types/not_loaded.ex">>,<<"lib/ash_phoenix/form">>, |
| 24 | - <<"lib/ash_phoenix/form/no_resource_configured.ex">>, |
| 25 | - <<"lib/ash_phoenix/form/auto.ex">>,<<"lib/ash_phoenix/form/form.ex">>, |
| 26 | - <<"lib/ash_phoenix/form/wrapped_value.ex">>, |
| 27 | - <<"lib/ash_phoenix/form/no_data_loaded.ex">>, |
| 10 | + [<<"lib">>,<<"lib/ash_phoenix.ex">>,<<"lib/mix">>,<<"lib/mix/tasks">>, |
| 11 | + <<"lib/mix/tasks/ash_phoenix.gen.live.ex">>, |
| 12 | + <<"lib/mix/tasks/ash_phoenix.gen.html.ex">>,<<"lib/ash_phoenix">>, |
| 13 | + <<"lib/ash_phoenix/form">>,<<"lib/ash_phoenix/form/no_data_loaded.ex">>, |
| 28 14 | <<"lib/ash_phoenix/form/no_form_configured.ex">>, |
| 29 15 | <<"lib/ash_phoenix/form/no_action_configured.ex">>, |
| 30 | - <<"lib/ash_phoenix/form/invalid_path.ex">>,<<"lib/mix">>, |
| 31 | - <<"lib/mix/tasks">>,<<"lib/mix/tasks/ash_phoenix.gen.live.ex">>, |
| 32 | - <<"lib/mix/tasks/ash_phoenix.gen.html.ex">>,<<".formatter.exs">>, |
| 16 | + <<"lib/ash_phoenix/form/auto.ex">>, |
| 17 | + <<"lib/ash_phoenix/form/no_resource_configured.ex">>, |
| 18 | + <<"lib/ash_phoenix/form/invalid_path.ex">>, |
| 19 | + <<"lib/ash_phoenix/form/wrapped_value.ex">>, |
| 20 | + <<"lib/ash_phoenix/form/form.ex">>,<<"lib/ash_phoenix/types">>, |
| 21 | + <<"lib/ash_phoenix/types/decimal.ex">>, |
| 22 | + <<"lib/ash_phoenix/types/not_loaded.ex">>, |
| 23 | + <<"lib/ash_phoenix/types/ci_string.ex">>,<<"lib/ash_phoenix/live_view.ex">>, |
| 24 | + <<"lib/ash_phoenix/gen">>,<<"lib/ash_phoenix/gen/gen.ex">>, |
| 25 | + <<"lib/ash_phoenix/gen/live.ex">>,<<"lib/ash_phoenix/form_data">>, |
| 26 | + <<"lib/ash_phoenix/form_data/error.ex">>, |
| 27 | + <<"lib/ash_phoenix/form_data/helpers.ex">>,<<"lib/ash_phoenix/plug">>, |
| 28 | + <<"lib/ash_phoenix/plug/subdomain_plug.ex">>, |
| 29 | + <<"lib/ash_phoenix/plug/exception.ex">>,<<"lib/ash_phoenix/filter_form">>, |
| 30 | + <<"lib/ash_phoenix/filter_form/arguments.ex">>, |
| 31 | + <<"lib/ash_phoenix/filter_form/filter_form.ex">>, |
| 32 | + <<"lib/ash_phoenix/filter_form/predicate.ex">>,<<".formatter.exs">>, |
| 33 33 | <<"mix.exs">>,<<"README.md">>,<<"LICENSE">>,<<"CHANGELOG.md">>, |
| 34 34 | <<"documentation">>,<<"documentation/tutorials">>, |
| 35 35 | <<"documentation/tutorials/getting-started-with-ash-and-phoenix.md">>, |
| 36 36 | <<"documentation/topics">>, |
| 37 37 | <<"documentation/topics/working-with-phoenix.md">>,<<"priv">>, |
| 38 38 | <<"priv/templates">>,<<"priv/templates/ash_phoenix.gen.live">>, |
| 39 | - <<"priv/templates/ash_phoenix.gen.live/form_component.ex.eex">>, |
| 40 | - <<"priv/templates/ash_phoenix.gen.live/index.ex.eex">>, |
| 41 39 | <<"priv/templates/ash_phoenix.gen.live/show.ex.eex">>, |
| 40 | + <<"priv/templates/ash_phoenix.gen.live/index.ex.eex">>, |
| 41 | + <<"priv/templates/ash_phoenix.gen.live/form_component.ex.eex">>, |
| 42 42 | <<"priv/templates/ash_phoenix.gen.html">>, |
| 43 | - <<"priv/templates/ash_phoenix.gen.html/resource_form.html.heex">>, |
| 44 43 | <<"priv/templates/ash_phoenix.gen.html/html.ex">>, |
| 45 | - <<"priv/templates/ash_phoenix.gen.html/index.html.heex">>, |
| 46 | - <<"priv/templates/ash_phoenix.gen.html/show.html.heex">>, |
| 44 | + <<"priv/templates/ash_phoenix.gen.html/new.html.heex">>, |
| 47 45 | <<"priv/templates/ash_phoenix.gen.html/edit.html.heex">>, |
| 46 | + <<"priv/templates/ash_phoenix.gen.html/index.html.heex">>, |
| 48 47 | <<"priv/templates/ash_phoenix.gen.html/controller.ex">>, |
| 49 | - <<"priv/templates/ash_phoenix.gen.html/new.html.heex">>]}. |
| 48 | + <<"priv/templates/ash_phoenix.gen.html/show.html.heex">>, |
| 49 | + <<"priv/templates/ash_phoenix.gen.html/resource_form.html.heex">>]}. |
| 50 50 | {<<"requirements">>, |
| 51 51 | [[{<<"name">>,<<"ash">>}, |
| 52 52 | {<<"app">>,<<"ash">>}, |
| @@ -61,7 +61,7 @@ | |
| 61 61 | [{<<"name">>,<<"phoenix_html">>}, |
| 62 62 | {<<"app">>,<<"phoenix_html">>}, |
| 63 63 | {<<"optional">>,false}, |
| 64 | - {<<"requirement">>,<<"~> 2.14 or ~> 3.0">>}, |
| 64 | + {<<"requirement">>,<<"~> 2.14 or ~> 3.0 or ~> 4.0">>}, |
| 65 65 | {<<"repository">>,<<"hexpm">>}], |
| 66 66 | [{<<"name">>,<<"phoenix_live_view">>}, |
| 67 67 | {<<"app">>,<<"phoenix_live_view">>}, |
| @@ -187,6 +187,8 @@ defmodule AshPhoenix.FormData.Helpers do | |
| 187 187 | [] |
| 188 188 | end |
| 189 189 | end) |
| 190 | + # Drop known system added vars |
| 191 | + |> Keyword.drop([:path, :index, :field, :message]) |
| 190 192 | end |
| 191 193 | |
| 192 194 | def transform_error(form, error) do |
| @@ -299,6 +299,10 @@ defmodule AshPhoenix.LiveView do | |
| 299 299 | |
| 300 300 | def page_link_params(%Ash.Page.Offset{more?: false}, "next"), do: :invalid |
| 301 301 | |
| 302 | + def page_link_params(%Ash.Page.Offset{more?: true} = offset, "next") do |
| 303 | + [limit: offset.limit, offset: (offset.offset || 0) + offset.limit] |
| 304 | + end |
| 305 | + |
| 302 306 | def page_link_params(%Ash.Page.Keyset{more?: false, after: nil, before: before}, "prev") |
| 303 307 | when not is_nil(before) do |
| 304 308 | :invalid |
| @@ -309,19 +313,6 @@ defmodule AshPhoenix.LiveView do | |
| 309 313 | :invalid |
| 310 314 | end |
| 311 315 | |
| 312 | - def page_link_params(%Ash.Page.Offset{} = offset, "next") do |
| 313 | - cond do |
| 314 | - offset.count && offset.offset + offset.limit >= offset.count -> |
| 315 | - :invalid |
| 316 | - |
| 317 | - Enum.count(offset.results) < offset.limit -> |
| 318 | - :invalid |
| 319 | - |
| 320 | - true -> |
| 321 | - [limit: offset.limit, offset: (offset.offset || 0) + offset.limit] |
| 322 | - end |
| 323 | - end |
| 324 | - |
| 325 316 | def page_link_params(%Ash.Page.Offset{offset: 0}, "prev") do |
| 326 317 | :invalid |
| 327 318 | end |
Loading more files…