Load dominant colors from record
This commit is contained in:
@@ -396,13 +396,13 @@ defmodule MusicLibraryWeb.RecordComponents do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
attr :colors, :list, required: true
|
attr :record, Records.Record, required: true
|
||||||
|
|
||||||
def record_colors(assigns) do
|
def record_colors(assigns) do
|
||||||
~H"""
|
~H"""
|
||||||
<span class="flex items-center">
|
<span class="flex items-center">
|
||||||
<span
|
<span
|
||||||
:for={color <- @colors}
|
:for={color <- @record.dominant_colors}
|
||||||
class="inline-block w-4 h-4 mr-1"
|
class="inline-block w-4 h-4 mr-1"
|
||||||
style={"background-color: #{color}"}
|
style={"background-color: #{color}"}
|
||||||
>
|
>
|
||||||
|
|||||||
@@ -32,7 +32,6 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
|
|||||||
def handle_params(%{"id" => id}, _, socket) do
|
def handle_params(%{"id" => id}, _, socket) do
|
||||||
record = Records.get_record!(id)
|
record = Records.get_record!(id)
|
||||||
last_listened_track = Records.get_last_listened_track(record)
|
last_listened_track = Records.get_last_listened_track(record)
|
||||||
{:ok, dominant_colors} = Records.DominantColors.extract_dominant_colors(record.cover_data)
|
|
||||||
|
|
||||||
socket =
|
socket =
|
||||||
if record.selected_release_id do
|
if record.selected_release_id do
|
||||||
@@ -46,7 +45,6 @@ defmodule MusicLibraryWeb.CollectionLive.Show do
|
|||||||
|> assign(:current_section, :collection)
|
|> assign(:current_section, :collection)
|
||||||
|> assign(:page_title, page_title(socket.assigns.live_action, record))
|
|> assign(:page_title, page_title(socket.assigns.live_action, record))
|
||||||
|> assign(:record, record)
|
|> assign(:record, record)
|
||||||
|> assign(:dominant_colors, dominant_colors)
|
|
||||||
|> assign(:last_listened_track, last_listened_track)}
|
|> assign(:last_listened_track, last_listened_track)}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
{@record.title}
|
{@record.title}
|
||||||
</h2>
|
</h2>
|
||||||
<p class="mt-2 flex items-center text-sm leading-5 text-zinc-500 dark:text-zinc-400">
|
<p class="mt-2 flex items-center text-sm leading-5 text-zinc-500 dark:text-zinc-400">
|
||||||
<.record_colors colors={@record.dominant_colors} />
|
<.record_colors record={@record} />
|
||||||
<span class="ml-1">
|
<span class="ml-1">
|
||||||
{Records.Record.format_release_date(@record.release_date)} · {format_label(
|
{Records.Record.format_release_date(@record.release_date)} · {format_label(
|
||||||
@record.format
|
@record.format
|
||||||
|
|||||||
@@ -25,14 +25,12 @@ defmodule MusicLibraryWeb.WishlistLive.Show do
|
|||||||
@impl true
|
@impl true
|
||||||
def handle_params(%{"id" => id}, _, socket) do
|
def handle_params(%{"id" => id}, _, socket) do
|
||||||
record = Records.get_record!(id)
|
record = Records.get_record!(id)
|
||||||
{:ok, dominant_colors} = Records.DominantColors.extract_dominant_colors(record.cover_data)
|
|
||||||
|
|
||||||
{:noreply,
|
{:noreply,
|
||||||
socket
|
socket
|
||||||
|> assign(:current_section, :wishlist)
|
|> assign(:current_section, :wishlist)
|
||||||
|> assign(:page_title, page_title(socket.assigns.live_action, record))
|
|> assign(:page_title, page_title(socket.assigns.live_action, record))
|
||||||
|> assign(:record, record)
|
|> assign(:record, record)}
|
||||||
|> assign(:dominant_colors, dominant_colors)}
|
|
||||||
end
|
end
|
||||||
|
|
||||||
@impl true
|
@impl true
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
{@record.title}
|
{@record.title}
|
||||||
</h2>
|
</h2>
|
||||||
<p class="flex items-center mt-2 text-sm leading-5 text-zinc-500 dark:text-zinc-400">
|
<p class="flex items-center mt-2 text-sm leading-5 text-zinc-500 dark:text-zinc-400">
|
||||||
<.record_colors colors={@record.dominant_colors} />
|
<.record_colors record={@record} />
|
||||||
{Records.Record.format_release_date(@record.release_date)}
|
{Records.Record.format_release_date(@record.release_date)}
|
||||||
<span :if={@current_date && !Records.Record.released?(@record, @current_date)}>
|
<span :if={@current_date && !Records.Record.released?(@record, @current_date)}>
|
||||||
({gettext("Unreleased")})
|
({gettext("Unreleased")})
|
||||||
|
|||||||
Reference in New Issue
Block a user