diff --git a/elixir/apps/web/lib/web/components/table_components.ex b/elixir/apps/web/lib/web/components/table_components.ex index d7a4a4514..d88f5dcf6 100644 --- a/elixir/apps/web/lib/web/components/table_components.ex +++ b/elixir/apps/web/lib/web/components/table_components.ex @@ -197,4 +197,75 @@ defmodule Web.TableComponents do """ end + + @doc ~S""" + Renders a table with 2 columns and generic styling. + + The component will likely be used when displaying the properties of an + individual resource (e.g. Gateway, Resource, Device, etc...) + + The component renders a table that is meant to be viewed vertically, with + the first column being the label and the second column being the value. + + This component is intended to be used with the `vertical_table_row` component + + ## Examples + + <.vertical_table> + <.vertical_table_row> + <:label>First Name + <:value>User First Name Here + + <.vertical_table_row> + <:label>Last Name + <:value>User Last Name Here + + + """ + + def vertical_table(assigns) do + ~H""" +
| - Instance Group Name - | -- <.badge type="info"> - <%= @gateway.group.name_prefix %> - - | -
|---|---|
| - Instance Name - | -- <%= @gateway.name_suffix %> - | -
| - Connectivity - | -- TODO: Peer to Peer - | -
| - Status - | -- <.badge type="success"> - TODO: Online - - | -
| - Location - | -
-
- <%= @gateway.last_seen_remote_ip %>
-
- |
-
| - Last seen - | -
- <.relative_datetime relative={@gateway.last_seen_at} />
- - <%= @gateway.last_seen_at %> - |
-
| - Remote IPv4 - | -
- <%= @gateway.ipv4 %>
- |
-
| - Remote IPv6 - | -
- <%= @gateway.ipv6 %>
- |
-
| - Transfer - | -- TODO: 4.43 GB up, 1.23 GB down - | -
| - Gateway version - | -
- <%= "Gateway Version: #{@gateway.last_seen_version}" %>
- - - <%= "User Agent: #{@gateway.last_seen_user_agent}" %> - |
-
| - Deployment method - | -- TODO: Docker - | -
+ <%= @gateway.last_seen_remote_ip %>
+
+
+
+ <.vertical_table_row>
+ <:label>
+ Last seen
+
+ <:value>
+ <.relative_datetime relative={@gateway.last_seen_at} />
+ <%= @gateway.ipv4 %>
+
+
+ <.vertical_table_row>
+ <:label>Remote IPv6
+ <:value>
+ <%= @gateway.ipv6 %>
+
+
+ <.vertical_table_row>
+ <:label>Transfer
+ <:value>TODO: 4.43 GB up, 1.23 GB down
+
+ <.vertical_table_row>
+ <:label>Gateway Version
+ <:value>
+ <%= "Gateway Version: #{@gateway.last_seen_version}" %>
+