2023-06-09 19:13:27 +00:00
|
|
|
<.header>
|
2023-07-26 19:41:52 +00:00
|
|
|
Your servers
|
|
|
|
<small class="block">
|
|
|
|
<%= "#{Enum.count(@servers)} servers" %>
|
|
|
|
</small>
|
2023-06-09 19:13:27 +00:00
|
|
|
<:actions>
|
2023-09-10 12:46:42 +00:00
|
|
|
<.button type="link" patch={~p"/servers/new"}>Connect a Server</.button>
|
2023-06-09 19:13:27 +00:00
|
|
|
</:actions>
|
|
|
|
</.header>
|
|
|
|
|
2023-07-26 19:41:52 +00:00
|
|
|
<div class="space-y-5" phx-update="replace" id="servers">
|
|
|
|
<.link
|
|
|
|
:for={server <- @servers}
|
|
|
|
navigate={~p"/servers/#{server}"}
|
|
|
|
class="group block rounded-lg bg-gray-100 p-5 shadow-sm shadow-gray-300 hover:bg-black hover:text-white"
|
|
|
|
>
|
|
|
|
<div class="flex flex-row flex-wrap justify-between">
|
|
|
|
<h2 class="text-xl"><%= server.name %></h2>
|
|
|
|
<span class="self-center text-sm">
|
2023-08-28 20:32:42 +00:00
|
|
|
<.server_status status={server.status} health={@healths[server.public_ip]} />
|
2023-07-26 19:41:52 +00:00
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
<div class="lg:text-sm">
|
|
|
|
<span>IP: <%= server.public_ip || "N/A" %></span>
|
|
|
|
</div>
|
|
|
|
</.link>
|
|
|
|
</div>
|
2023-06-09 19:13:27 +00:00
|
|
|
|
2023-06-19 20:28:24 +00:00
|
|
|
<.modal :if={@live_action == :new} id="server-modal" show on_cancel={JS.patch(~p"/servers")}>
|
|
|
|
<.live_component module={PrymnWeb.ServerLive.NewServer} id={:new} patch={~p"/servers"} />
|
2023-06-09 19:13:27 +00:00
|
|
|
</.modal>
|