From 50b025efca9ac025476cb6b741c14708a5225b1a Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Tue, 18 Feb 2025 12:38:29 +0000 Subject: [PATCH] Refactor with to avoid internal assignments --- lib/music_library/records.ex | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/lib/music_library/records.ex b/lib/music_library/records.ex index 48f977e4..a677883c 100644 --- a/lib/music_library/records.ex +++ b/lib/music_library/records.ex @@ -129,18 +129,19 @@ defmodule MusicLibrary.Records do end def import_from_musicbrainz_release_group(musicbrainz_id, opts \\ []) do - with format = Keyword.get(opts, :format, "cd"), - purchased_at = Keyword.get(opts, :purchased_at), - {:ok, release_group} <- MusicBrainz.get_release_group(musicbrainz_id), + format = Keyword.get(opts, :format, "cd") + purchased_at = Keyword.get(opts, :purchased_at) + + with {:ok, release_group} <- MusicBrainz.get_release_group(musicbrainz_id), {:ok, release_group_with_releases} <- merge_releases(musicbrainz_id, release_group), - {:ok, cover_data} <- get_cover_art_or_default(musicbrainz_id), - record_attrs = - build_record_attrs(release_group_with_releases, %{ - "cover_data" => cover_data, - "format" => format, - "purchased_at" => purchased_at - }) do - create_record(record_attrs) + {:ok, cover_data} <- get_cover_art_or_default(musicbrainz_id) do + release_group_with_releases + |> build_record_attrs(%{ + "cover_data" => cover_data, + "format" => format, + "purchased_at" => purchased_at + }) + |> create_record() else error -> error end