Media UI v1 (#17)

* Updated comments

* Added basic media tables to sources#show

* Adds a very basic listing and show page for media
This commit is contained in:
Kieran
2024-02-09 16:21:51 -08:00
committed by GitHub
parent dabec62e99
commit 8bdd189fa5
8 changed files with 102 additions and 2 deletions
@@ -0,0 +1,11 @@
defmodule PinchflatWeb.Media.MediaItemController do
use PinchflatWeb, :controller
alias Pinchflat.Media
def show(conn, %{"id" => id}) do
media_item = Media.get_media_item!(id)
render(conn, :show, media_item: media_item)
end
end
@@ -0,0 +1,5 @@
defmodule PinchflatWeb.Media.MediaItemHTML do
use PinchflatWeb, :html
embed_templates "media_item_html/*"
end
@@ -0,0 +1,18 @@
<div class="mb-6 flex gap-3 flex-row items-center justify-between">
<div class="flex gap-3 items-center">
<.link :if={@conn.params["source_id"]} navigate={~p"/sources/#{@media_item.source_id}"}>
<.icon name="hero-arrow-left" class="w-10 h-10 hover:dark:text-white" />
</.link>
<h2 class="text-title-md2 font-bold text-black dark:text-white ml-4">
Media Item #<%= @media_item.id %>
</h2>
</div>
</div>
<div class="rounded-sm border border-stroke bg-white px-5 pb-2.5 pt-6 shadow-default dark:border-strokedark dark:bg-boxdark sm:px-7.5 xl:pb-1">
<div class="max-w-full overflow-x-auto">
<div class="flex flex-col gap-10 dark:text-white">
<h3 class="font-bold text-xl">Attributes</h3>
<.list_items_from_map map={Map.from_struct(@media_item)} />
</div>
</div>
</div>