Shows a more human readable name for each zta provider (#2572)

---------

Co-authored-by: Hugo Baraúna <hugo.barauna@gmail.com>
Co-authored-by: Jonatan Kłosko <jonatanklosko@gmail.com>
Co-authored-by: José Valim <jose.valim@dashbit.co>
This commit is contained in:
Hugo Baraúna 2024-04-18 10:07:14 -03:00 committed by GitHub
parent c1a913ae1c
commit 27c72f564f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 19 additions and 8 deletions

View file

@ -302,6 +302,14 @@ defmodule Livebook.Config do
module not in @identity_provider_no_id module not in @identity_provider_no_id
end end
@doc """
Returns metadata of a ZTA provider
"""
@spec zta_metadata(atom()) :: map()
def zta_metadata(zta_provider) do
Enum.find(Livebook.Config.identity_providers(), &(&1.type == zta_provider))
end
@doc """ @doc """
Returns whether the application is running inside an iframe. Returns whether the application is running inside an iframe.
""" """

View file

@ -57,4 +57,10 @@ defmodule Livebook.ZTA do
def put(name, value) do def put(name, value) do
:ets.insert(__MODULE__, [{name, value}]) :ets.insert(__MODULE__, [{name, value}])
end end
def provider_name(nil), do: "None"
def provider_name(provider_type) do
Livebook.Config.zta_metadata(provider_type).name
end
end end

View file

@ -135,8 +135,8 @@ defmodule LivebookWeb.AppComponents do
:if={zta_metadata = zta_metadata(@form[:zta_provider].value)} :if={zta_metadata = zta_metadata(@form[:zta_provider].value)}
field={@form[:zta_key]} field={@form[:zta_key]}
type={Map.get(zta_metadata, :input, "text")} type={Map.get(zta_metadata, :input, "text")}
label={zta_metadata.value} label={zta_metadata.name}
placeholder={zta_placeholder(zta_metadata)} placeholder={Map.get(zta_metadata, :placeholder, "")}
phx-debounce phx-debounce
disabled={@disabled} disabled={@disabled}
/> />
@ -163,8 +163,8 @@ defmodule LivebookWeb.AppComponents do
defp zta_metadata(nil), do: nil defp zta_metadata(nil), do: nil
defp zta_metadata(zta_provider) do defp zta_metadata(provider) do
Enum.find(Livebook.Config.identity_providers(), &(&1.type == zta_provider)) Livebook.Config.zta_metadata(provider)
end end
@doc """ @doc """
@ -191,7 +191,4 @@ defmodule LivebookWeb.AppComponents do
def update_app_list(apps, {:app_closed, app}) do def update_app_list(apps, {:app_closed, app}) do
Enum.reject(apps, &(&1.slug == app.slug)) Enum.reject(apps, &(&1.slug == app.slug))
end end
defp zta_placeholder(%{placeholder: placeholder}), do: placeholder
defp zta_placeholder(_), do: nil
end end

View file

@ -76,7 +76,7 @@ defmodule LivebookWeb.Hub.Teams.DeploymentGroupComponent do
</.labeled_text> </.labeled_text>
<.labeled_text class="grow mt-6 lg:border-l lg:pl-4" label="Authentication"> <.labeled_text class="grow mt-6 lg:border-l lg:pl-4" label="Authentication">
<span class="text-lg font-normal"> <span class="text-lg font-normal">
<%= String.capitalize(to_string(@deployment_group.zta_provider || "none")) %> <%= Livebook.ZTA.provider_name(@deployment_group.zta_provider) %>
</span> </span>
</.labeled_text> </.labeled_text>
</div> </div>