diff --git a/lib/music_library/records/record.ex b/lib/music_library/records/record.ex
index ffa6409c..b623d17a 100644
--- a/lib/music_library/records/record.ex
+++ b/lib/music_library/records/record.ex
@@ -71,29 +71,17 @@ defmodule MusicLibrary.Records.Record do
end
end
- def selected_release_id_options(record) do
+ def releases(record) do
record.musicbrainz_data
|> ReleaseGroup.releases()
- |> Enum.map(fn release ->
- {
- selected_release_label(release),
- release["id"]
- }
- end)
end
def selected_release(record) do
- record.musicbrainz_data
- |> ReleaseGroup.releases()
+ record
+ |> releases()
|> Enum.find(fn release -> release["id"] == record.selected_release_id end)
end
- def selected_release_label(release) do
- [release["date"], release["country"], release["packaging"]]
- |> Enum.reject(&is_nil/1)
- |> Enum.join(" ")
- end
-
def changeset(record, attrs) do
record
|> cast(attrs, [
diff --git a/lib/music_library_web/components/form_component.ex b/lib/music_library_web/components/form_component.ex
index 42c13081..21de8fd8 100644
--- a/lib/music_library_web/components/form_component.ex
+++ b/lib/music_library_web/components/form_component.ex
@@ -1,7 +1,9 @@
defmodule MusicLibraryWeb.FormComponent do
use MusicLibraryWeb, :live_component
- import MusicLibraryWeb.RecordComponents, only: [format_label: 1, type_label: 1]
+ import MusicLibraryWeb.RecordComponents,
+ only: [format_label: 1, type_label: 1, release_label: 1]
+
alias MusicLibrary.Records
alias MusicLibrary.Records.{Cover, Record}
@@ -54,7 +56,7 @@ defmodule MusicLibraryWeb.FormComponent do