Toggling view modes

This commit is contained in:
2023-11-24 00:38:13 +00:00
parent 77dda92301
commit e3e68b89ee
2 changed files with 47 additions and 20 deletions

View File

@@ -1,26 +1,42 @@
<.header>
Listing Items
<:actions>
<.button phx-click="toggle">
Toggle Display
</.button>
</:actions>
</.header>
<div class="grid grid-cols-3" id="items" phx-update="stream">
<div
:for={{dom_id, item} <- @streams.items}
id={dom_id}
phx-click={JS.navigate(~p"/details/#{item}")}
<div
class={
case @display do
:grid -> "grid grid-cols-3 gap-2"
:row -> ""
end
}
id="items-grid"
>
<.link
:for={item <- @items}
navigate={~p"/details/#{item}"}
class={[
"p-2 rounded hover:bg-zinc-100 active:bg-zinc-200",
case @display do
:grid -> "h-72"
:row -> "flex flex-row h-24"
end
]}
>
<img :if={item.image_url} src={item.image_url} />
<div class="aspect-square flex flex-col justify-center">
<img
:if={item.image_url}
src={item.image_url}
alt={item.title}
height="224"
width="224"
class="rounded"
/>
</div>
<%= item.title %>
</div>
</div>
<div class="" id="items" phx-update="stream">
<div
:for={{dom_id, item} <- @streams.items}
id={dom_id}
phx-click={JS.navigate(~p"/details/#{item}")}
class="flex flex-row h-20"
>
<img :if={item.image_url} src={item.image_url} />
<%= item.title %>
</div>
</.link>
</div>