feat: ccloseout of changes for audit
This commit is contained in:
@@ -545,8 +545,13 @@ defmodule BDS.Desktop.ShellLive.ChatEditor do
|
||||
|
||||
@spec markdown_html(binary()) :: Phoenix.HTML.Safe.t()
|
||||
def markdown_html(content) when is_binary(content) do
|
||||
# Match Earmark's defaults (GFM tables, strikethrough, autolinks); escape
|
||||
# raw HTML to text rather than rendering it, as the old escape: true did.
|
||||
html =
|
||||
case MDEx.to_html(content) do
|
||||
case MDEx.to_html(content,
|
||||
extension: [table: true, strikethrough: true, autolink: true],
|
||||
render: [escape: true]
|
||||
) do
|
||||
{:ok, rendered} -> rendered
|
||||
{:error, _reason} -> ""
|
||||
end
|
||||
|
||||
@@ -278,8 +278,13 @@ defmodule BDS.Desktop.ShellLive.MiscEditor do
|
||||
|
||||
@spec markdown_html(String.t()) :: Phoenix.HTML.safe()
|
||||
def markdown_html(content) do
|
||||
# Match Earmark's defaults (GFM tables, strikethrough, autolinks); escape
|
||||
# raw HTML to text rather than rendering it, as the old escape: true did.
|
||||
html =
|
||||
case MDEx.to_html(content || "") do
|
||||
case MDEx.to_html(content || "",
|
||||
extension: [table: true, strikethrough: true, autolink: true],
|
||||
render: [escape: true]
|
||||
) do
|
||||
{:ok, rendered} -> rendered
|
||||
{:error, _reason} -> ""
|
||||
end
|
||||
|
||||
@@ -3,24 +3,6 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|
||||
alias BDS.Desktop.ShellLive.SidebarState, as: ShellSidebarState
|
||||
|
||||
@event_handlers %{
|
||||
"toggle_sidebar_filters" => :toggle_sidebar_filters,
|
||||
"toggle_sidebar_archive" => :toggle_sidebar_archive,
|
||||
"toggle_sidebar_tags" => :toggle_sidebar_tags,
|
||||
"toggle_sidebar_categories" => :toggle_sidebar_categories,
|
||||
"update_sidebar_search" => :update_sidebar_search,
|
||||
"clear_sidebar_search" => :clear_sidebar_search,
|
||||
"clear_sidebar_tags" => :clear_sidebar_tags,
|
||||
"clear_sidebar_categories" => :clear_sidebar_categories,
|
||||
"toggle_sidebar_tag" => :toggle_sidebar_tag,
|
||||
"toggle_sidebar_category" => :toggle_sidebar_category,
|
||||
"select_sidebar_year" => :select_sidebar_year,
|
||||
"select_sidebar_month" => :select_sidebar_month,
|
||||
"clear_sidebar_month" => :clear_sidebar_month,
|
||||
"clear_sidebar_filters" => :clear_sidebar_filters,
|
||||
"load_more_sidebar" => :load_more_sidebar
|
||||
}
|
||||
|
||||
@spec handle(Phoenix.LiveView.Socket.t(), String.t(), map(), (Phoenix.LiveView.Socket.t(),
|
||||
term() ->
|
||||
Phoenix.LiveView.Socket.t())) ::
|
||||
@@ -29,14 +11,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
{:noreply, dispatch(event, socket, params, reload)}
|
||||
end
|
||||
|
||||
defp dispatch(event, socket, params, reload) do
|
||||
case Map.fetch(@event_handlers, event) do
|
||||
{:ok, handler} -> handle_event(handler, socket, params, reload)
|
||||
:error -> socket
|
||||
end
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_filters, socket, _params, reload) do
|
||||
defp dispatch("toggle_sidebar_filters", socket, _params, reload) do
|
||||
socket =
|
||||
ShellSidebarState.put_filter_panel_state(socket, fn state ->
|
||||
if state.visible do
|
||||
@@ -55,7 +30,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
reload.(socket, socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_archive, socket, _params, reload) do
|
||||
defp dispatch("toggle_sidebar_archive", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filter_panel_state(fn state ->
|
||||
%{state | archive_collapsed: not state.archive_collapsed}
|
||||
@@ -63,7 +38,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_tags, socket, _params, reload) do
|
||||
defp dispatch("toggle_sidebar_tags", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filter_panel_state(fn state ->
|
||||
%{state | tags_collapsed: not state.tags_collapsed}
|
||||
@@ -71,7 +46,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_categories, socket, _params, reload) do
|
||||
defp dispatch("toggle_sidebar_categories", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filter_panel_state(fn state ->
|
||||
%{state | categories_collapsed: not state.categories_collapsed}
|
||||
@@ -79,7 +54,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:update_sidebar_search, socket, %{"sidebar_filters" => params}, reload) do
|
||||
defp dispatch("update_sidebar_search", socket, %{"sidebar_filters" => params}, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters ->
|
||||
Map.put(
|
||||
@@ -91,25 +66,25 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:clear_sidebar_search, socket, _params, reload) do
|
||||
defp dispatch("clear_sidebar_search", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters -> Map.put(filters, :search, nil) end)
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:clear_sidebar_tags, socket, _params, reload) do
|
||||
defp dispatch("clear_sidebar_tags", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters -> Map.put(filters, :tags, []) end)
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:clear_sidebar_categories, socket, _params, reload) do
|
||||
defp dispatch("clear_sidebar_categories", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters -> Map.put(filters, :categories, []) end)
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_tag, socket, %{"tag" => tag}, reload) do
|
||||
defp dispatch("toggle_sidebar_tag", socket, %{"tag" => tag}, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters ->
|
||||
ShellSidebarState.toggle_filter_value(filters, :tags, tag)
|
||||
@@ -117,7 +92,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:toggle_sidebar_category, socket, %{"category" => category}, reload) do
|
||||
defp dispatch("toggle_sidebar_category", socket, %{"category" => category}, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters ->
|
||||
ShellSidebarState.toggle_filter_value(filters, :categories, category)
|
||||
@@ -125,7 +100,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:select_sidebar_year, socket, %{"year" => year}, reload) do
|
||||
defp dispatch("select_sidebar_year", socket, %{"year" => year}, reload) do
|
||||
parsed_year = ShellSidebarState.parse_optional_integer(year)
|
||||
|
||||
socket
|
||||
@@ -144,7 +119,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:select_sidebar_month, socket, %{"year" => year, "month" => month}, reload) do
|
||||
defp dispatch("select_sidebar_month", socket, %{"year" => year, "month" => month}, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filter_panel_state(fn state ->
|
||||
%{
|
||||
@@ -161,7 +136,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:clear_sidebar_month, socket, _params, reload) do
|
||||
defp dispatch("clear_sidebar_month", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filter_panel_state(fn state ->
|
||||
%{state | archive_collapsed: false}
|
||||
@@ -172,7 +147,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:clear_sidebar_filters, socket, _params, reload) do
|
||||
defp dispatch("clear_sidebar_filters", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters ->
|
||||
filters
|
||||
@@ -189,7 +164,7 @@ defmodule BDS.Desktop.ShellLive.SidebarEvents do
|
||||
|> reload.(socket.assigns.workbench)
|
||||
end
|
||||
|
||||
defp handle_event(:load_more_sidebar, socket, _params, reload) do
|
||||
defp dispatch("load_more_sidebar", socket, _params, reload) do
|
||||
socket
|
||||
|> ShellSidebarState.put_filters(fn filters ->
|
||||
Map.update(
|
||||
|
||||
Reference in New Issue
Block a user