From e2c2c6d5470edab94eb39ddc2387e4c3d36c32e9 Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Sat, 21 Jun 2025 15:20:24 +0300 Subject: [PATCH] Add tooltips for scrobble activity debug info --- .../components/core_components.ex | 1 + .../live/stats_live/index.html.heex | 159 ++++++++++++++++++ priv/gettext/default.pot | 31 ++++ priv/gettext/en/LC_MESSAGES/default.po | 31 ++++ 4 files changed, 222 insertions(+) diff --git a/lib/music_library_web/components/core_components.ex b/lib/music_library_web/components/core_components.ex index 4969b152..7982b9c9 100644 --- a/lib/music_library_web/components/core_components.ex +++ b/lib/music_library_web/components/core_components.ex @@ -33,6 +33,7 @@ defmodule MusicLibraryWeb.CoreComponents do defdelegate select(assigns), to: Fluxon.Components.Select defdelegate separator(assigns), to: Fluxon.Components.Separator defdelegate sheet(assigns), to: Fluxon.Components.Sheet + defdelegate tooltip(assigns), to: Fluxon.Components.Tooltip @doc """ Renders a simple form. diff --git a/lib/music_library_web/live/stats_live/index.html.heex b/lib/music_library_web/live/stats_live/index.html.heex index 304fc24f..8effbbe2 100644 --- a/lib/music_library_web/live/stats_live/index.html.heex +++ b/lib/music_library_web/live/stats_live/index.html.heex @@ -191,6 +191,72 @@ class="whitespace-nowrap text-right text-xs sm:text-sm text-zinc-500 dark:text-zinc-400" > {album.scrobbled_at_label} + <.tooltip> + <.icon + name="hero-information-circle" + class="-mt-1 h-5 w-5 text-zinc-500 dark:text-zinc-400 cursor-pointer" + aria-hidden="true" + data-slot="icon" + /> + <:content> +
+
+
{gettext("Album ID:")}
+
+ + {album.metadata.musicbrainz_id || gettext("Unknown")} + + +
+
+
+
{gettext("Artist ID:")}
+
+ + {album.artist.musicbrainz_id || gettext("Unknown")} + + +
+
+
+ + @@ -303,6 +369,99 @@ > {track.scrobbled_at_label} + <.tooltip> + <.icon + name="hero-information-circle" + class="-mt-1 h-5 w-5 text-zinc-500 dark:text-zinc-400 cursor-pointer" + aria-hidden="true" + data-slot="icon" + /> + <:content> +
+
+
{gettext("Track ID:")}
+
+ + {track.musicbrainz_id || gettext("Unknown")} + + +
+
+
+
{gettext("Album ID:")}
+
+ + {track.album.musicbrainz_id || gettext("Unknown")} + + +
+
+
+
{gettext("Artist ID:")}
+
+ + {track.artist.musicbrainz_id || gettext("Unknown")} + + +
+
+
+ + diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot index f21b1005..d9d1bb76 100644 --- a/priv/gettext/default.pot +++ b/priv/gettext/default.pot @@ -823,6 +823,7 @@ msgid "Discogs data" msgstr "" #: lib/music_library_web/components/record_components.ex +#: lib/music_library_web/live/stats_live/index.html.heex #, elixir-autogen, elixir-format msgid "Unknown" msgstr "" @@ -918,3 +919,33 @@ msgstr "" #, elixir-autogen, elixir-format msgid "All time" msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Album ID:" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Artist ID:" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Copy album MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Copy artist MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Copy track MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Track ID:" +msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po index 3c085430..4974228d 100644 --- a/priv/gettext/en/LC_MESSAGES/default.po +++ b/priv/gettext/en/LC_MESSAGES/default.po @@ -823,6 +823,7 @@ msgid "Discogs data" msgstr "" #: lib/music_library_web/components/record_components.ex +#: lib/music_library_web/live/stats_live/index.html.heex #, elixir-autogen, elixir-format msgid "Unknown" msgstr "" @@ -918,3 +919,33 @@ msgstr "" #, elixir-autogen, elixir-format msgid "All time" msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format, fuzzy +msgid "Album ID:" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Artist ID:" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format, fuzzy +msgid "Copy album MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format, fuzzy +msgid "Copy artist MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format, fuzzy +msgid "Copy track MusicBrainz ID to clipboard" +msgstr "" + +#: lib/music_library_web/live/stats_live/index.html.heex +#, elixir-autogen, elixir-format +msgid "Track ID:" +msgstr ""