Skip to content

Commit 2a922e3

Browse files
feat: update to Phoenix HTML 4.1, bump dependencies (#4277)
* feat: update to Phenix HTML 4.1 * fix: updating to the new Gettext.Backend approach * chore: update pot files ro locale version 45.0.0 * fix: downgrade cloack back to 1.1.2 * revert: merge of mix.lock * fix: new syntax for field name generation for phx-feedback-for * Revert "fix: new syntax for field name generation for phx-feedback-for" This reverts commit 4d95e4f. * fix: downgrade floki back to 0.35.2 * Revert "fix: downgrade floki back to 0.35.2" This reverts commit a4f0b6b. * fix: ensure floki nil is handled * style: linter findings * Revert "fix: ensure floki nil is handled" * fix: new syntax for field name generation for phx-feedback-for * debug: floki paramter error * Revert "debug: floki paramter error" This reverts commit 6192026. * fix: Remove unnecessary code in settings_test.exs which breaks floki 0.36+
1 parent c7fd300 commit 2a922e3

36 files changed

Lines changed: 499 additions & 494 deletions

File tree

lib/teslamate_web.ex

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ defmodule TeslaMateWeb do
2727
use Phoenix.Controller, namespace: TeslaMateWeb
2828

2929
import Plug.Conn
30-
import TeslaMateWeb.Gettext
30+
use Gettext, backend: TeslaMateWeb.Gettext
3131
alias TeslaMateWeb.Router.Helpers, as: Routes
3232

3333
unquote(verified_routes())
@@ -79,22 +79,24 @@ defmodule TeslaMateWeb do
7979
def channel do
8080
quote do
8181
use Phoenix.Channel
82-
import TeslaMateWeb.Gettext
82+
use Gettext, backend: TeslaMateWeb.Gettext
8383
end
8484
end
8585

8686
defp view_helpers do
8787
quote do
88-
# Use all HTML functionality (forms, tags, etc)
89-
use Phoenix.HTML
88+
# Import all HTML functionality (forms, tags, etc)
89+
import Phoenix.HTML
90+
import Phoenix.HTML.Form
91+
use PhoenixHTMLHelpers
9092

9193
# Import convenience functions for LiveView rendering
9294
import Phoenix.LiveView.Helpers
9395
# Import basic rendering functionality (render, render_layout, etc)
9496
import Phoenix.View
9597

9698
import TeslaMateWeb.ErrorHelpers
97-
import TeslaMateWeb.Gettext
99+
use Gettext, backend: TeslaMateWeb.Gettext
98100
alias TeslaMateWeb.Router.Helpers, as: Routes
99101

100102
unquote(verified_routes())

lib/teslamate_web/gettext.ex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ defmodule TeslaMateWeb.Gettext do
55
By using [Gettext](https://hexdocs.pm/gettext),
66
your module gains a set of macros for translations, for example:
77
8-
import TeslaMateWeb.Gettext
8+
use Gettext, backend: TeslaMateWeb.Gettext
99
1010
# Simple translation
1111
gettext("Here is the string to translate")
@@ -20,5 +20,5 @@ defmodule TeslaMateWeb.Gettext do
2020
2121
See the [Gettext Docs](https://hexdocs.pm/gettext) for detailed usage.
2222
"""
23-
use Gettext, otp_app: :teslamate
23+
use Gettext.Backend, otp_app: :teslamate
2424
end

lib/teslamate_web/live/car_live/summary.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
defmodule TeslaMateWeb.CarLive.Summary do
22
use TeslaMateWeb, :live_view
33

4-
import TeslaMateWeb.Gettext
4+
use Gettext, backend: TeslaMateWeb.Gettext
55

66
alias TeslaMate.Vehicles.Vehicle.Summary
77
alias TeslaMate.Vehicles.Vehicle

lib/teslamate_web/live/charge_live/cost.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ defmodule TeslaMateWeb.ChargeLive.Cost do
77
alias TeslaMate.Log.ChargingProcess
88
alias TeslaMate.Log
99

10-
import TeslaMateWeb.Gettext
10+
use Gettext, backend: TeslaMateWeb.Gettext
1111

1212
on_mount {TeslaMateWeb.InitAssigns, :locale}
1313

lib/teslamate_web/live/charge_live/cost.html.heex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<nav class="breadcrumb" aria-label="breadcrumbs">
22
<ul>
3-
<li><%= live_redirect(gettext("Home"), to: ~p"/") %></li>
4-
<li class="is-active"><%= live_redirect(gettext("Charge Cost"), to: "") %></li>
3+
<li><.link navigate={~p"/"}><%= gettext("Home") %></.link></li>
4+
<li class="is-active"><.link navigate=""><%= gettext("Charge Cost") %></.link></li>
55
</ul>
66
</nav>
77

lib/teslamate_web/live/geofence_live/form.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ defmodule TeslaMateWeb.GeoFenceLive.Form do
161161
socket
162162
|> assign(geofence: geofence)
163163
|> put_flash(:success, flash_msg(action, name))
164-
|> push_redirect(to: Routes.live_path(socket, GeoFenceLive.Index))
164+
|> push_navigate(to: Routes.live_path(socket, GeoFenceLive.Index))
165165

166166
{:ok, socket}
167167
end

lib/teslamate_web/live/geofence_live/form.html.heex

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<nav class="breadcrumb" aria-label="breadcrumbs">
22
<ul>
3-
<li><%= live_redirect(gettext("Home"), to: ~p"/") %></li>
4-
<li><%= live_redirect(gettext("Geo-Fences"), to: ~p"/geo-fences") %></li>
3+
<li><.link navigate={~p"/"}><%= gettext("Home") %></.link></li>
4+
<li><.link navigate={~p"/geo-fences"}><%= gettext("Geo-Fences") %></.link></li>
55
<li class="is-active">
66
<a href="#">
77
<%= case @action do
@@ -120,10 +120,9 @@
120120
<div class="field-body">
121121
<div class="field is-grouped">
122122
<div class="control">
123-
<%= live_redirect(gettext("Back"),
124-
to: Routes.live_path(@socket, GeoFenceLive.Index),
125-
class: "button"
126-
) %>
123+
<.link navigate={Routes.live_path(@socket, GeoFenceLive.Index)} class="button">
124+
<%= gettext("Back") %>
125+
</.link>
127126
</div>
128127
<div class="control">
129128
<%= submit(gettext("Save"),

lib/teslamate_web/live/geofence_live/index.html.heex

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,21 @@
11
<nav class="breadcrumb" aria-label="breadcrumbs">
22
<ul>
3-
<li><%= live_redirect(gettext("Home"), to: ~p"/") %></li>
4-
<li class="is-active"><%= live_redirect(gettext("Geo-Fences"), to: ~p"/geo-fences") %></li>
3+
<li><.link navigate={~p"/"}><%= gettext("Home") %></.link></li>
4+
<li class="is-active">
5+
<.link navigate={~p"/geo-fences"}><%= gettext("Geo-Fences") %></.link>
6+
</li>
57
</ul>
68
</nav>
79

8-
<%= live_redirect(
9-
raw("""
10-
<span>#{gettext("Create")}</span>
10+
<.link
11+
navigate={Routes.live_path(@socket, TeslaMateWeb.GeoFenceLive.Form)}
12+
class="button is-info is-small is-rounded is-pulled-right mb-4"
13+
>
14+
<span><%= gettext("Create") %></span>
1115
<span class="icon">
1216
<span class="mdi mdi-plus"></span>
1317
</span>
14-
"""),
15-
to: Routes.live_path(@socket, TeslaMateWeb.GeoFenceLive.Form),
16-
class: "button is-info is-small is-rounded is-pulled-right mb-4"
17-
) %>
18+
</.link>
1819

1920
<table class="table is-fullwidth">
2021
<thead class="is-hidden-mobile">
@@ -43,13 +44,12 @@
4344
<td>
4445
<div class="field is-grouped is-pulled-right">
4546
<p class="control">
46-
<%= live_redirect(
47-
raw(
48-
"<span class='icon'><span class='mdi mdi-square-edit-outline'></span></span>"
49-
),
50-
to: Routes.live_path(@socket, TeslaMateWeb.GeoFenceLive.Form, geofence, []),
51-
class: "button is-info is-small is-inverted is-light"
52-
) %>
47+
<.link
48+
navigate={Routes.live_path(@socket, TeslaMateWeb.GeoFenceLive.Form, geofence, [])}
49+
class="button is-info is-small is-inverted is-light"
50+
>
51+
<span class="icon"><span class="mdi mdi-square-edit-outline"></span></span>
52+
</.link>
5353
</p>
5454
<p class="control">
5555
<%= link(raw("<span class='icon'><span class='mdi mdi-trash-can'></span></span>"),

lib/teslamate_web/live/import_live/index.html.heex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<nav class="breadcrumb" aria-label="breadcrumbs">
22
<ul>
3-
<li><%= live_redirect(gettext("Home"), to: ~p"/") %></li>
4-
<li class="is-active"><%= live_redirect(gettext("TeslaFi Import"), to: "") %></li>
3+
<li><.link navigate={~p"/"}><%= gettext("Home") %></.link></li>
4+
<li class="is-active"><.link navigate=""><%= gettext("TeslaFi Import") %></.link></li>
55
</ul>
66
</nav>
77

lib/teslamate_web/live/settings_live/index.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ defmodule TeslaMateWeb.SettingsLive.Index do
171171
end
172172

173173
defp add_params(socket, params) do
174-
push_redirect(socket, to: Routes.live_path(socket, __MODULE__, params), replace: true)
174+
push_navigate(socket, to: Routes.live_path(socket, __MODULE__, params), replace: true)
175175
end
176176

177177
defp prepare(%GlobalSettings{} = settings) do

0 commit comments

Comments
 (0)