100 lines
3.1 KiB
Text
100 lines
3.1 KiB
Text
<article class="h-entry hentry">
|
|
<.header class="max-w-2xl mx-auto" class_title="p-name">
|
|
<%= @note.name %>
|
|
</.header>
|
|
|
|
<%= if @current_user do %>
|
|
<section class="max-w-2xl mx-auto mt-8">
|
|
<ul class="flex gap-3">
|
|
<li>
|
|
<a href={~p"/admin/notes/#{@note}/edit"} class="button">
|
|
<.icon name="hero-pencil-square" /> Edit
|
|
</a>
|
|
</li>
|
|
<li><a href={~p"/admin/notes/#{@note}"} class="button">Show in Admin</a></li>
|
|
</ul>
|
|
</section>
|
|
<% end %>
|
|
|
|
<aside class="max-w-2xl mx-auto mt-8">
|
|
<.featured_images note={@note} />
|
|
</aside>
|
|
|
|
<%= if has_outline?(@note) do %>
|
|
<aside class="max-w-2xl mx-auto mt-8 prose prose-gruvbox">
|
|
<div class="bg-theme-background1 rounded p-2">
|
|
<%= raw(render_outline(@note)) %>
|
|
</div>
|
|
</aside>
|
|
<% end %>
|
|
|
|
<section class="mt-8 mx-auto prose prose-gruvbox md:prose-lg lg:prose-xl | p-summary e-content">
|
|
<%= Markdown.render(@note.content) |> raw %>
|
|
</section>
|
|
|
|
<%= if not Enum.empty?(@note.links_to) do %>
|
|
<section class="mt-8 prose prose-gruvbox max-w-2xl mx-auto">
|
|
<.divider text="" /> Notes linking here:
|
|
<ul class="">
|
|
<%= for link <- @note.links_to do %>
|
|
<li><a href={~p"/note/#{link.slug}"}><%= link.name %></a></li>
|
|
<% end %>
|
|
</ul>
|
|
</section>
|
|
<% end %>
|
|
|
|
<%= if String.length(@note.url || "") > 0 do %>
|
|
<section class="mt-8 max-w-2xl mx-auto text-center text-lg">
|
|
<.divider text=" " />
|
|
<.icon name="hero-link" /> <a href={@note.url}><%= @note.url %></a>
|
|
</section>
|
|
<% end %>
|
|
|
|
<footer class="max-w-2xl mx-auto mt-8 text-theme-base">
|
|
<%= if @note.published_at do %>
|
|
<span>Published</span>
|
|
<% else %>
|
|
<span>Unpublished</span>
|
|
<% end %>
|
|
<time class="font-semibold | dt-published"><%= pretty_date(@note.published_at) %></time>
|
|
<.dot />
|
|
<span>Last Updated</span>
|
|
<time class="font-semibold" datetime={datetime(@note.updated_at)}>
|
|
<%= pretty_date(@note.updated_at) %>
|
|
</time>
|
|
<%= if not Enum.empty?(@note.tags) do %>
|
|
<.dot />
|
|
<span>Tags</span>
|
|
<.tags note={@note} />
|
|
<% end %>
|
|
<%= if @note.kind != :post do %>
|
|
<.dot />
|
|
<span><%= @note.kind %></span>
|
|
<% end %>
|
|
|
|
<a href={~p"/"} class="hidden | h-card u-author">Inhji</a>
|
|
<a href={~p"/note/#{@note.slug}"} class="hidden | u-url u-uid"><%= @note.name %></a>
|
|
</footer>
|
|
|
|
<section class="max-w-2xl mx-auto mt-8">
|
|
<%= if !Enum.empty?(@note.images) do %>
|
|
<.line />
|
|
|
|
<div class="flex flex-wrap gap-3">
|
|
<%= for image <- @note.images do %>
|
|
<a
|
|
href={ChiyaWeb.Uploaders.NoteImage.url({image.path, image}, :full_dithered)}
|
|
class="lightbox | w-28"
|
|
data-gallery="note"
|
|
data-description={ChiyaWeb.Markdown.render(image.content)}
|
|
>
|
|
<img
|
|
src={ChiyaWeb.Uploaders.NoteImage.url({image.path, image}, :thumb_dithered)}
|
|
class="rounded"
|
|
/>
|
|
</a>
|
|
<% end %>
|
|
</div>
|
|
<% end %>
|
|
</section>
|
|
</article>
|