fix: tab titles on ai chats on reload
This commit is contained in:
@@ -2,7 +2,7 @@ defmodule BDS.Desktop.ShellLive.TabHelpers do
|
||||
@moduledoc false
|
||||
|
||||
alias BDS.Desktop.ShellData
|
||||
alias BDS.{BoundedAtoms, Media, Posts}
|
||||
alias BDS.{AI, BoundedAtoms, Media, Posts}
|
||||
alias BDS.Media.Media, as: MediaRecord
|
||||
alias BDS.Posts.Post
|
||||
alias BDS.UI.Registry
|
||||
@@ -21,10 +21,12 @@ defmodule BDS.Desktop.ShellLive.TabHelpers do
|
||||
def tab_subtitle(tab, tab_meta) do
|
||||
case Map.get(tab_meta, {tab.type, tab.id}) do
|
||||
%{subtitle: subtitle} when is_binary(subtitle) and subtitle != "" -> subtitle
|
||||
_other -> "Desktop workbench content routed through the Elixir shell."
|
||||
_other -> default_tab_subtitle(tab)
|
||||
end
|
||||
end
|
||||
|
||||
def default_tab_title(%{type: :chat, id: conversation_id}), do: chat_title(conversation_id)
|
||||
|
||||
def default_tab_title(%{type: type, id: id}) do
|
||||
case Registry.editor_route(type) do
|
||||
%{singleton: true} -> ShellData.route_label(type)
|
||||
@@ -32,6 +34,9 @@ defmodule BDS.Desktop.ShellLive.TabHelpers do
|
||||
end
|
||||
end
|
||||
|
||||
defp default_tab_subtitle(%{type: :chat}), do: translated("AI conversations")
|
||||
defp default_tab_subtitle(_tab), do: "Desktop workbench content routed through the Elixir shell."
|
||||
|
||||
def tab_route_label(nil), do: translated("Dashboard")
|
||||
def tab_route_label(%{type: type}), do: ShellData.route_label(type)
|
||||
|
||||
@@ -88,6 +93,14 @@ defmodule BDS.Desktop.ShellLive.TabHelpers do
|
||||
end
|
||||
end
|
||||
|
||||
def chat_title(conversation_id) do
|
||||
case AI.get_chat_conversation(conversation_id) do
|
||||
%{title: title} when is_binary(title) and title != "" -> title
|
||||
%{id: id} when is_binary(id) and id != "" -> id
|
||||
_other -> "Chat"
|
||||
end
|
||||
end
|
||||
|
||||
def parse_integer(value) when is_integer(value), do: value
|
||||
|
||||
def parse_integer(value) do
|
||||
|
||||
Reference in New Issue
Block a user