defmodule Flames.Dashboard.ShowErrorLive do @moduledoc false use Flames.Web, :live_view alias Flames.Errors @impl true def mount(_params, %{"csp_nonces" => csp_nonces}, socket) do {:ok, socket |> assign(csp_nonces: csp_nonces)} end @impl true def handle_params(%{"error" => id} = params, url, socket) do uri = URI.parse(url) # Drop /123 path = Path.dirname(uri.path) error = Errors.get!(id) {incident, ""} = Integer.parse(params["incident"] || "-1") { :noreply, socket |> assign(:basepath, path) |> assign(:error, error) |> assign(:incident, incident) } end @impl true def render(assigns) do ~H"""
<%= pick_message(@error, @incident) |> display_message() %>