diff --git a/lib/music_library_web/components/record_components.ex b/lib/music_library_web/components/record_components.ex
index 1f490237..a332daa7 100644
--- a/lib/music_library_web/components/record_components.ex
+++ b/lib/music_library_web/components/record_components.ex
@@ -1,10 +1,12 @@
defmodule MusicLibraryWeb.RecordComponents do
use MusicLibraryWeb, :html
+ alias MusicBrainz.ReleaseGroup
alias MusicBrainz.ReleaseSearchResult
alias MusicLibrary.Assets.Transform
alias MusicLibrary.Country
alias MusicLibrary.Records
+ alias MusicLibrary.RecordSets.RecordSet
alias Phoenix.LiveView.JS
attr :record, :map, required: true
@@ -550,4 +552,201 @@ defmodule MusicLibraryWeb.RecordComponents do
/>
"""
end
+
+ attr :record, Records.Record, required: true
+ attr :current_date, Date, default: nil
+
+ def record_title_and_metadata(assigns) do
+ ~H"""
+
+
+ {@record.title}
+
+
+ <.record_colors record={@record} />
+
+ <.icon
+ name="hero-calendar-days"
+ class="-mt-1 h-4 w-4"
+ aria-hidden="true"
+ data-slot="icon"
+ />
+ {Records.Record.format_release_date(@record.release_date)}
+
+ ({gettext("Unreleased")})
+
+ · {format_label(@record.format)} · {type_label(@record.type)}
+
+
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+
+ def record_external_links(assigns) do
+ ~H"""
+
+ {@record.id}
+
+ {@record.musicbrainz_id}
+
+ <.button
+ href={ReleaseGroup.url(@record.musicbrainz_id)}
+ target="_blank"
+ rel="noopener noreferrer"
+ variant="ghost"
+ size="xs"
+ >
+ <.icon name="hero-arrow-top-right-on-square" class="h-3.5 w-3.5" aria-hidden="true" />
+ {gettext("MusicBrainz")}
+
+ <.button
+ variant="ghost"
+ size="xs"
+ phx-click={
+ JS.dispatch("music_library:clipcopy", to: "#record-#{@record.id}")
+ |> JS.transition("animate-shake")
+ }
+ >
+ <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
+ {gettext("Copy ID")}
+
+ <.button
+ variant="ghost"
+ size="xs"
+ phx-click={
+ JS.dispatch("music_library:clipcopy", to: "#mb-#{@record.musicbrainz_id}")
+ |> JS.transition("animate-shake")
+ }
+ >
+ <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
+ {gettext("Copy MB ID")}
+
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+ attr :section, :atom, values: [:collection, :wishlist], required: true
+
+ def record_genres(assigns) do
+ ~H"""
+ <.dl_row label={gettext("Genres")}>
+ <.link
+ :for={genre <- @record.genres}
+ patch={genre_search_path(@section, genre)}
+ >
+ <.badge variant="soft">
+ {genre}
+
+
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+
+ def record_published_releases(assigns) do
+ ~H"""
+ <.dl_row label={gettext("Published releases")}>
+
+ {Records.Record.release_count(@record)}
+ <.release_list record={@record} />
+
+
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+
+ def record_includes(assigns) do
+ ~H"""
+ <.dl_row
+ :if={Records.Record.included_release_groups_count(@record) > 0}
+ label={gettext("Includes")}
+ >
+
+ -
+ {included_release_group.artists} - {included_release_group.title}
+
+
+
+ """
+ end
+
+ attr :record_sets, :list, required: true
+
+ def record_sets_list(assigns) do
+ ~H"""
+ <.dl_row :if={@record_sets != []} label={gettext("Record sets")}>
+
+ -
+ <.link
+ navigate={~p"/record-sets/#{record_set}"}
+ class="text-zinc-700 hover:text-zinc-500 dark:text-zinc-400 dark:hover:text-zinc-300 hover:underline"
+ >
+ {record_set.name}
+
+
+ {gettext(
+ "%{collected}/%{total} collected",
+ RecordSet.count_by_status(record_set)
+ )}
+
+
+
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+
+ def record_timestamps(assigns) do
+ ~H"""
+
+ <.icon name="hero-clock" class="h-3.5 w-3.5" aria-hidden="true" />
+ {gettext("Added %{date}", date: Records.Record.format_as_date(@record.inserted_at))}
+ ·
+ {gettext("Updated %{date}", date: Records.Record.format_as_date(@record.updated_at))}
+
+ """
+ end
+
+ attr :record, Records.Record, required: true
+ attr :embedding_text, :string, required: true
+
+ def record_debug_sheet(assigns) do
+ ~H"""
+ <.debug_data_sheet
+ id="debug-data"
+ items={[
+ %{
+ name: "musicbrainz",
+ title: gettext("MusicBrainz"),
+ data: @record.musicbrainz_data,
+ type: :json
+ },
+ %{name: "embedding", title: gettext("Embedding"), data: @embedding_text, type: :text}
+ ]}
+ />
+ """
+ end
+
+ defp genre_search_path(:collection, genre),
+ do: ~p"/collection?#{%{query: ~s(genre:"#{genre}")}}"
+
+ defp genre_search_path(:wishlist, genre),
+ do: ~p"/wishlist?#{%{query: ~s(genre:"#{genre}")}}"
end
diff --git a/lib/music_library_web/live/collection_live/show.ex b/lib/music_library_web/live/collection_live/show.ex
index 40374bb4..4682c735 100644
--- a/lib/music_library_web/live/collection_live/show.ex
+++ b/lib/music_library_web/live/collection_live/show.ex
@@ -5,19 +5,22 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
import MusicLibraryWeb.RecordComponents,
only: [
- format_label: 1,
- type_label: 1,
- release_summary: 1,
artist_links: 1,
- record_colors: 1,
record_cover: 1,
- release_list: 1,
+ record_debug_sheet: 1,
+ record_external_links: 1,
+ record_genres: 1,
+ record_includes: 1,
+ record_published_releases: 1,
+ record_sets_list: 1,
+ record_timestamps: 1,
+ record_title_and_metadata: 1,
+ release_summary: 1,
similar_records: 1
]
alias MusicLibrary.{Records, RecordSets, ScrobbleActivity}
alias MusicLibrary.Records.Similarity
- alias MusicLibrary.RecordSets.RecordSet
alias Phoenix.LiveView.JS
@impl true
@@ -212,75 +215,11 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
-
-
- {@record.title}
-
-
- <.record_colors record={@record} />
-
- <.icon
- name="hero-calendar-days"
- class="-mt-1 h-4 w-4"
- aria-hidden="true"
- data-slot="icon"
- />
- {Records.Record.format_release_date(@record.release_date)} · {format_label(
- @record.format
- )} · {type_label(@record.type)}
-
-
-
-
- {@record.id}
-
- {@record.musicbrainz_id}
-
- <.button
- href={MusicBrainz.ReleaseGroup.url(@record.musicbrainz_id)}
- target="_blank"
- rel="noopener noreferrer"
- variant="ghost"
- size="xs"
- >
- <.icon name="hero-arrow-top-right-on-square" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("MusicBrainz")}
-
- <.button
- variant="ghost"
- size="xs"
- phx-click={
- JS.dispatch("music_library:clipcopy", to: "#record-#{@record.id}")
- |> JS.transition("animate-shake")
- }
- >
- <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Copy ID")}
-
- <.button
- variant="ghost"
- size="xs"
- phx-click={
- JS.dispatch("music_library:clipcopy", to: "#mb-#{@record.musicbrainz_id}")
- |> JS.transition("animate-shake")
- }
- >
- <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Copy MB ID")}
-
-
+ <.record_title_and_metadata record={@record} />
+ <.record_external_links record={@record} />
- <.dl_row label={gettext("Genres")}>
- <.link
- :for={genre <- @record.genres}
- patch={~p"/collection?#{%{query: ~s(genre:"#{genre}")}}"}
- >
- <.badge variant="soft">
- {genre}
-
-
-
+ <.record_genres record={@record} section={:collection} />
<.dl_row label={gettext("Purchased on")}>
{Records.Record.format_as_date(@record.purchased_at)}
@@ -295,23 +234,7 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
{ngettext("(1 scrobble)", "(%{count} scrobbles)", @play_count)}
- <.dl_row label={gettext("Published releases")}>
-
- {Records.Record.release_count(@record)}
- <.release_list record={@record} />
-
-
-
+ <.record_published_releases record={@record} />
<.dl_row label={gettext("Collected release")}>
- <.dl_row
- :if={Records.Record.included_release_groups_count(@record) > 0}
- label={gettext("Includes")}
- >
-
- -
- {included_release_group.artists} - {included_release_group.title}
-
-
-
- <.dl_row :if={@record_sets != []} label={gettext("Record sets")}>
-
- -
- <.link
- navigate={~p"/record-sets/#{record_set}"}
- class="text-zinc-700 hover:text-zinc-500 dark:text-zinc-400 dark:hover:text-zinc-300 hover:underline"
- >
- {record_set.name}
-
-
- {gettext(
- "%{collected}/%{total} collected",
- RecordSet.count_by_status(record_set)
- )}
-
-
-
-
+ <.record_includes record={@record} />
+ <.record_sets_list record_sets={@record_sets} />
-
- <.icon name="hero-clock" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Added %{date}", date: Records.Record.format_as_date(@record.inserted_at))}
- ·
- {gettext("Updated %{date}", date: Records.Record.format_as_date(@record.updated_at))}
-
+ <.record_timestamps record={@record} />
@@ -383,18 +275,7 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
section={:collection}
/>
- <.debug_data_sheet
- id="debug-data"
- items={[
- %{
- name: "musicbrainz",
- title: gettext("MusicBrainz"),
- data: @record.musicbrainz_data,
- type: :json
- },
- %{name: "embedding", title: gettext("Embedding"), data: @embedding_text, type: :text}
- ]}
- />
+ <.record_debug_sheet record={@record} embedding_text={@embedding_text} />
<.live_component
id="release-with-tracks"
diff --git a/lib/music_library_web/live/wishlist_live/show.ex b/lib/music_library_web/live/wishlist_live/show.ex
index 487aa758..f4e5c383 100644
--- a/lib/music_library_web/live/wishlist_live/show.ex
+++ b/lib/music_library_web/live/wishlist_live/show.ex
@@ -3,19 +3,22 @@ defmodule MusicLibraryWeb.WishlistLive.Show do
import MusicLibraryWeb.RecordComponents,
only: [
- format_label: 1,
- type_label: 1,
- release_summary: 1,
artist_links: 1,
- record_colors: 1,
record_cover: 1,
- release_list: 1
+ record_debug_sheet: 1,
+ record_external_links: 1,
+ record_genres: 1,
+ record_includes: 1,
+ record_published_releases: 1,
+ record_sets_list: 1,
+ record_timestamps: 1,
+ record_title_and_metadata: 1,
+ release_summary: 1
]
alias MusicLibrary.OnlineStoreTemplates
alias MusicLibrary.{Records, RecordSets}
alias MusicLibrary.Records.Similarity
- alias MusicLibrary.RecordSets.RecordSet
@impl true
def render(assigns) do
@@ -188,95 +191,12 @@ defmodule MusicLibraryWeb.WishlistLive.Show do
-
-
- {@record.title}
-
-
- <.record_colors record={@record} />
-
-
- <.icon
- name="hero-calendar-days"
- class="-mt-1 h-4 w-4"
- aria-hidden="true"
- data-slot="icon"
- />
- {Records.Record.format_release_date(@record.release_date)}
-
- ({gettext("Unreleased")})
-
- · {format_label(@record.format)} · {type_label(@record.type)}
-
-
-
-
- {@record.id}
-
- {@record.musicbrainz_id}
-
- <.button
- href={MusicBrainz.ReleaseGroup.url(@record.musicbrainz_id)}
- target="_blank"
- rel="noopener noreferrer"
- variant="ghost"
- size="xs"
- >
- <.icon name="hero-arrow-top-right-on-square" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("MusicBrainz")}
-
- <.button
- variant="ghost"
- size="xs"
- phx-click={
- JS.dispatch("music_library:clipcopy", to: "#record-#{@record.id}")
- |> JS.transition("animate-shake")
- }
- >
- <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Copy ID")}
-
- <.button
- variant="ghost"
- size="xs"
- phx-click={
- JS.dispatch("music_library:clipcopy", to: "#mb-#{@record.musicbrainz_id}")
- |> JS.transition("animate-shake")
- }
- >
- <.icon name="hero-clipboard-document" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Copy MB ID")}
-
-
+ <.record_title_and_metadata record={@record} current_date={@current_date} />
+ <.record_external_links record={@record} />
- <.dl_row label={gettext("Genres")}>
- <.link
- :for={genre <- @record.genres}
- patch={~p"/wishlist?#{%{query: ~s(genre:"#{genre}")}}"}
- >
- <.badge variant="soft">
- {genre}
-
-
-
- <.dl_row label={gettext("Published releases")}>
-
- {Records.Record.release_count(@record)}
- <.release_list record={@record} />
-
-
-
+ <.record_genres record={@record} section={:wishlist} />
+ <.record_published_releases record={@record} />
<.dl_row label={gettext("Wishlisted release")}>
- <.dl_row
- :if={Records.Record.included_release_groups_count(@record) > 0}
- label={gettext("Includes")}
- >
-
- -
- {included_release_group.artists} - {included_release_group.title}
-
-
-
- <.dl_row :if={@record_sets != []} label={gettext("Record sets")}>
-
- -
- <.link
- navigate={~p"/record-sets/#{record_set}"}
- class="text-zinc-700 hover:text-zinc-500 dark:text-zinc-400 dark:hover:text-zinc-300 hover:underline"
- >
- {record_set.name}
-
-
- {gettext(
- "%{collected}/%{total} collected",
- RecordSet.count_by_status(record_set)
- )}
-
-
-
-
+ <.record_includes record={@record} />
+ <.record_sets_list record_sets={@record_sets} />
-
- <.icon name="hero-clock" class="h-3.5 w-3.5" aria-hidden="true" />
- {gettext("Added %{date}", date: Records.Record.format_as_date(@record.inserted_at))}
- ·
- {gettext("Updated %{date}", date: Records.Record.format_as_date(@record.updated_at))}
-
+ <.record_timestamps record={@record} />
@@ -359,18 +248,7 @@ defmodule MusicLibraryWeb.WishlistLive.Show do
- <.debug_data_sheet
- id="debug-data"
- items={[
- %{
- name: "musicbrainz",
- title: gettext("MusicBrainz"),
- data: @record.musicbrainz_data,
- type: :json
- },
- %{name: "embedding", title: gettext("Embedding"), data: @embedding_text, type: :text}
- ]}
- />
+ <.record_debug_sheet record={@record} embedding_text={@embedding_text} />
<.live_component
id="record-chat"
diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot
index 9f7d4aac..9f29f6b2 100644
--- a/priv/gettext/default.pot
+++ b/priv/gettext/default.pot
@@ -79,9 +79,8 @@ msgstr ""
msgid "Formats"
msgstr ""
+#: lib/music_library_web/components/record_components.ex
#: lib/music_library_web/components/record_form.ex
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format
msgid "Genres"
msgstr ""
@@ -263,8 +262,7 @@ msgstr ""
msgid "Wishlisted"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Includes"
msgstr ""
@@ -389,7 +387,6 @@ msgstr[0] ""
msgstr[1] ""
#: lib/music_library_web/components/record_components.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format
msgid "Unreleased"
msgstr ""
@@ -471,8 +468,7 @@ msgstr ""
msgid "Record added to the collection"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Published releases"
msgstr ""
@@ -1578,8 +1574,7 @@ msgstr ""
msgid "Available releases"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Show releases included in the record"
msgstr ""
@@ -1881,14 +1876,12 @@ msgstr ""
msgid "Try a different search term or check the spelling"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "%{collected}/%{total} collected"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Record sets"
msgstr ""
@@ -1967,33 +1960,28 @@ msgstr ""
msgid "Could not search MusicBrainz. Please try again."
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Added %{date}"
msgstr ""
+#: lib/music_library_web/components/record_components.ex
#: lib/music_library_web/live/artist_live/show.ex
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format
msgid "MusicBrainz"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Updated %{date}"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Copy ID"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Copy MB ID"
msgstr ""
@@ -2011,8 +1999,7 @@ msgstr ""
msgid "Discogs"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Embedding"
msgstr ""
diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po
index 122d14a6..a48ae435 100644
--- a/priv/gettext/en/LC_MESSAGES/default.po
+++ b/priv/gettext/en/LC_MESSAGES/default.po
@@ -79,9 +79,8 @@ msgstr ""
msgid "Formats"
msgstr ""
+#: lib/music_library_web/components/record_components.ex
#: lib/music_library_web/components/record_form.ex
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format
msgid "Genres"
msgstr ""
@@ -263,8 +262,7 @@ msgstr ""
msgid "Wishlisted"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Includes"
msgstr ""
@@ -389,7 +387,6 @@ msgstr[0] ""
msgstr[1] ""
#: lib/music_library_web/components/record_components.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format
msgid "Unreleased"
msgstr ""
@@ -471,8 +468,7 @@ msgstr ""
msgid "Record added to the collection"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Published releases"
msgstr ""
@@ -1578,8 +1574,7 @@ msgstr ""
msgid "Available releases"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Show releases included in the record"
msgstr ""
@@ -1881,14 +1876,12 @@ msgstr ""
msgid "Try a different search term or check the spelling"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "%{collected}/%{total} collected"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "Record sets"
msgstr ""
@@ -1967,33 +1960,28 @@ msgstr ""
msgid "Could not search MusicBrainz. Please try again."
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Added %{date}"
msgstr ""
+#: lib/music_library_web/components/record_components.ex
#: lib/music_library_web/live/artist_live/show.ex
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "MusicBrainz"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "Updated %{date}"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Copy ID"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "Copy MB ID"
msgstr ""
@@ -2011,8 +1999,7 @@ msgstr ""
msgid "Discogs"
msgstr ""
-#: lib/music_library_web/live/collection_live/show.ex
-#: lib/music_library_web/live/wishlist_live/show.ex
+#: lib/music_library_web/components/record_components.ex
#, elixir-autogen, elixir-format
msgid "Embedding"
msgstr ""