Update to Fluxon 2.0

Address required changes and immediate deprecations
This commit is contained in:
Claudio Ortolina
2025-08-20 16:09:53 +03:00
parent 0ed420acb3
commit 71ca5fa1b9
15 changed files with 24 additions and 28 deletions
+1
View File
@@ -3,6 +3,7 @@
@source "../js";
@source "../../lib/music_library_web";
@source "../../deps/fluxon/**/*.*ex";
@import "../../deps/fluxon/priv/static/theme";
@source "../../deps/live_toast/lib/**/*.*ex";
/* A Tailwind plugin that makes "hero-#{ICON}" classes available.
@@ -290,12 +290,12 @@ defmodule MusicLibraryWeb.BarcodeScannerComponent do
{gettext("New")}
</.badge>
<.link :if={@status == :wishlisted} navigate={~p"/wishlist/#{@record_id}"}>
<.badge color="yellow">
<.badge color="warning">
{gettext("Wishlisted")}
</.badge>
</.link>
<.link :if={@status == :collected} navigate={~p"/collection/#{@record_id}"}>
<.badge color="green">
<.badge color="success">
{gettext("Collected")}
</.badge>
</.link>
@@ -52,7 +52,7 @@ defmodule MusicLibraryWeb.ReleaseComponent do
>
{gettext("Scrobble release")}
</.button>
<.button :if={!@can_scrobble?} as="link" size="sm" href={LastFm.auth_url()}>
<.button :if={!@can_scrobble?} size="sm" href={LastFm.auth_url()}>
{gettext("Connect your Last.fm account")}
</.button>
</div>
@@ -26,7 +26,7 @@ defmodule MusicLibraryWeb.ArtistLive.Show do
href={LastFm.Artist.events_url(@lastfm_artist_info)}
target="_blank"
>
<.badge variant="pill" class="mr-2">{gettext("On Tour")}</.badge>
<.badge variant="soft" class="mr-2">{gettext("On Tour")}</.badge>
</a>
"""
end
@@ -78,7 +78,7 @@
<.on_tour_link lastfm_artist_info={lastfm_artist_info} />
<.play_count play_count={lastfm_artist_info.play_count} />
</.async_result>
<.button variant="solid" as="link" patch={~p"/artists/#{@artist.musicbrainz_id}/import"}>
<.button variant="solid" patch={~p"/artists/#{@artist.musicbrainz_id}/import"}>
<.icon name="hero-plus" class="h-4 w-4 mr-2" aria-hidden="true" data-slot="icon" />
{gettext("Add more")}
</.button>
@@ -6,7 +6,6 @@
<.button
class="rounded-l-md rounded-r-none"
variant="solid"
as="link"
size="sm"
patch={~p"/collection/import"}
>
@@ -16,7 +15,6 @@
<.button
class="-ml-px rounded-r-md rounded-l-none"
variant="solid"
as="link"
size="sm"
patch={~p"/collection/scan"}
>
@@ -31,7 +29,6 @@
<span class="isolate inline-flex rounded-md shadow-xs">
<.button
patch={order_path(@record_list_params, :purchase)}
as="link"
size="sm"
class={[
"rounded-l-md rounded-r-none",
@@ -48,7 +45,6 @@
</.button>
<.button
patch={order_path(@record_list_params, :alphabetical)}
as="link"
size="sm"
class={[
"-ml-px rounded-r-md rounded-l-none",
@@ -7,7 +7,7 @@
</div>
<div>
<nav class="isolate inline-flex rounded-md shadow-xs">
<.button variant="solid" as="link" size="sm" patch={~p"/online-store-templates/new"}>
<.button variant="solid" size="sm" patch={~p"/online-store-templates/new"}>
<.icon name="hero-plus" class="h-4 w-4 mr-2" aria-hidden="true" data-slot="icon" />
{gettext("New Template")}
</.button>
@@ -38,10 +38,10 @@
<p class="text-sm font-semibold text-gray-900 dark:text-white">
{template.name}
</p>
<.badge :if={template.enabled} color="green">
<.badge :if={template.enabled} color="success">
{gettext("Enabled")}
</.badge>
<.badge :if={!template.enabled} color="yellow">
<.badge :if={!template.enabled} color="warning">
{gettext("Disabled")}
</.badge>
</div>
@@ -114,8 +114,8 @@ defmodule MusicLibraryWeb.ScrobbleRulesLive.Index do
defp type_badge(assigns) do
~H"""
<.badge :if={@type == :album} color="red">{gettext("Album")}</.badge>
<.badge :if={@type == :artist} color="cyan">{gettext("Artist")}</.badge>
<.badge :if={@type == :album} color="danger">{gettext("Album")}</.badge>
<.badge :if={@type == :artist} color="info">{gettext("Artist")}</.badge>
"""
end
@@ -123,8 +123,8 @@ defmodule MusicLibraryWeb.ScrobbleRulesLive.Index do
defp status_badge(assigns) do
~H"""
<.badge :if={@enabled} color="green">{gettext("Enabled")}</.badge>
<.badge :if={!@enabled} color="yellow">{gettext("Disabled")}</.badge>
<.badge :if={@enabled} color="success">{gettext("Enabled")}</.badge>
<.badge :if={!@enabled} color="warning">{gettext("Disabled")}</.badge>
"""
end
end
@@ -10,7 +10,6 @@
<.button
class="rounded-l-md rounded-r-none"
variant="solid"
as="link"
size="sm"
patch={~p"/scrobble-rules/new"}
>
@@ -222,7 +222,7 @@
}
navigate={~p"/collection/#{record_id}"}
>
<.badge color="green">
<.badge color="success">
{gettext("Collected")}
</.badge>
</.link>
@@ -233,7 +233,7 @@
}
navigate={~p"/wishlist/#{record_id}"}
>
<.badge color="yellow">
<.badge color="warning">
{gettext("Wishlisted")}
</.badge>
</.link>
@@ -432,7 +432,7 @@
}
navigate={~p"/collection/#{record_id}"}
>
<.badge color="green">{gettext("Collected")}</.badge>
<.badge color="success">{gettext("Collected")}</.badge>
</.link>
<.link
:if={
@@ -440,7 +440,7 @@
}
navigate={~p"/wishlist/#{record_id}"}
>
<.badge color="yellow">{gettext("Wishlisted")}</.badge>
<.badge color="warning">{gettext("Wishlisted")}</.badge>
</.link>
</div>
@@ -142,12 +142,15 @@ defmodule MusicLibraryWeb.StatsLive.TopAlbums do
}>
{album.play_count}
</.badge>
<.badge :if={tracked_record?(@collected_releases, album.album_musicbrainz_id)} color="green">
<.badge
:if={tracked_record?(@collected_releases, album.album_musicbrainz_id)}
color="success"
>
{album.play_count}
</.badge>
<.badge
:if={tracked_record?(@wishlisted_releases, album.album_musicbrainz_id)}
color="yellow"
color="warning"
>
{album.play_count}
</.badge>
@@ -23,7 +23,6 @@
<span class="isolate inline-flex rounded-md shadow-xs">
<.button
patch={order_path(@record_list_params, :insertion)}
as="link"
size="sm"
class={[
"rounded-l-md rounded-r-none",
@@ -35,7 +34,6 @@
</.button>
<.button
patch={order_path(@record_list_params, :alphabetical)}
as="link"
size="sm"
class={[
"-ml-px rounded-r-md rounded-l-none",
@@ -279,7 +279,6 @@
<div class="mt-4 space-y-2">
<.button
:for={template <- @online_store_templates}
as="link"
href={OnlineStoreTemplates.generate_url(template, @record)}
target="_blank"
rel="noopener noreferrer"
+1 -1
View File
@@ -66,7 +66,7 @@ defmodule MusicLibrary.MixProject do
app: false,
compile: false,
depth: 1},
{:fluxon, "~> 1.2.0", repo: :fluxon},
{:fluxon, "~> 2.0.0", repo: :fluxon},
{:flagmojis, "~> 1.0"},
{:live_toast, "~> 0.8.0"},
+1 -1
View File
@@ -23,7 +23,7 @@
"fine": {:hex, :fine, "0.1.4", "b19a89c1476c7c57afb5f9314aed5960b5bc95d5277de4cb5ee8e1d1616ce379", [:mix], [], "hexpm", "be3324cc454a42d80951cf6023b9954e9ff27c6daa255483b3e8d608670303f5"},
"flagmojis": {:hex, :flagmojis, "1.0.0", "d2b411d9d2c150180103a4d605ee394cabc23c2b6ddf7a0011a9a55a23575281", [:mix], [], "hexpm", "9d9916575cf9dcbe6f0199b410994bec9d19d47971f70089eb7f210f823cd293"},
"floki": {:hex, :floki, "0.38.0", "62b642386fa3f2f90713f6e231da0fa3256e41ef1089f83b6ceac7a3fd3abf33", [:mix], [], "hexpm", "a5943ee91e93fb2d635b612caf5508e36d37548e84928463ef9dd986f0d1abd9"},
"fluxon": {:hex, :fluxon, "1.2.0", "58e4bc1cb45a8c054d743798caf5db37d3594e77e16e3db18b15b420898dafe8", [:mix], [{:phoenix_live_view, ">= 1.0.0", [hex: :phoenix_live_view, repo: "hexpm", optional: false]}], "fluxon", "33e8d4a6db32c6d2c88915d89e8222b33cd9ba05c114d8a5fda9c44a4c12afbf"},
"fluxon": {:hex, :fluxon, "2.0.0", "6a4bff70261584b45a112618a44a1eda8118cdc40fd015cbe6d10ebe83e179c6", [:mix], [{:phoenix_live_view, ">= 1.0.0", [hex: :phoenix_live_view, repo: "hexpm", optional: false]}], "fluxon", "e12c57b3e7c7a35f5ca18d575f70900899185ca1e27bc6f42ded345366ee45fe"},
"gettext": {:hex, :gettext, "0.26.2", "5978aa7b21fada6deabf1f6341ddba50bc69c999e812211903b169799208f2a8", [:mix], [{:expo, "~> 0.5.1 or ~> 1.0", [hex: :expo, repo: "hexpm", optional: false]}], "hexpm", "aa978504bcf76511efdc22d580ba08e2279caab1066b76bb9aa81c4a1e0a32a5"},
"glob_ex": {:hex, :glob_ex, "0.1.11", "cb50d3f1ef53f6ca04d6252c7fde09fd7a1cf63387714fe96f340a1349e62c93", [:mix], [], "hexpm", "342729363056e3145e61766b416769984c329e4378f1d558b63e341020525de4"},
"heroicons": {:git, "https://github.com/tailwindlabs/heroicons.git", "0435d4ca364a608cc75e2f8683d374e55abbae26", [tag: "v2.2.0", sparse: "optimized", depth: 1]},