From 1390733c3e9244af32cf1b0feaecb2a6b13175d9 Mon Sep 17 00:00:00 2001 From: Urix <43704209+uri-99@users.noreply.github.com> Date: Sat, 21 Dec 2024 16:02:15 -0300 Subject: [PATCH 1/3] fix: set_empty_values --- .../lib/explorer_web/live/pages/home/index.ex | 41 +++++++++++-------- 1 file changed, 25 insertions(+), 16 deletions(-) diff --git a/explorer/lib/explorer_web/live/pages/home/index.ex b/explorer/lib/explorer_web/live/pages/home/index.ex index a28f1c937e..0b2af668f4 100644 --- a/explorer/lib/explorer_web/live/pages/home/index.ex +++ b/explorer/lib/explorer_web/live/pages/home/index.ex @@ -2,6 +2,18 @@ defmodule ExplorerWeb.Home.Index do require Logger use ExplorerWeb, :live_view + defp set_empty_values(socket) do + Logger.info("Setting empty values") + socket |> assign( + verified_batches: :empty, + operators_registered: :empty, + latest_batches: :empty, + verified_proofs: :empty, + restaked_amount_eth: :empty, + restaked_amount_usd: :empty + ) + end + @impl true def handle_info(_, socket) do verified_batches = Batches.get_amount_of_verified_batches() @@ -62,44 +74,41 @@ defmodule ExplorerWeb.Home.Index do )} rescue e in Mint.TransportError -> + Logger.error("Error: Mint.TransportError: #{inspect(e)}") case e do %Mint.TransportError{reason: :econnrefused} -> { :ok, - assign(socket, - verified_batches: :empty, - operators_registered: :empty, - latest_batches: :empty, - verified_proofs: :empty - ) + set_empty_values(socket) |> put_flash(:error, "Could not connect to the backend, please try again later.") } _ -> - "Other transport error: #{inspect(e)}" |> Logger.error() - {:ok, socket |> put_flash(:error, "Something went wrong, please try again later.")} + { + :ok, + set_empty_values(socket) + |> put_flash(:error, "Something went wrong, please try again later.")} end e in FunctionClauseError -> + Logger.error("Error: FunctionClauseError: #{inspect(e)}") case e do %FunctionClauseError{ module: ExplorerWeb.Home.Index } -> { :ok, - assign(socket, - verified_batches: :empty, - operators_registered: :empty, - latest_batches: :empty, - verified_proofs: :empty - ) + set_empty_values(socket) |> put_flash(:error, "Something went wrong with the RPC, please try again later.") } end e -> - Logger.error("Other error: #{inspect(e)}") - {:ok, socket |> put_flash(:error, "Something went wrong, please try again later.")} + Logger.error("Error: other error: #{inspect(e)}") + { + :ok, + set_empty_values(socket) + |> put_flash(:error, "Something went wrong, please try again later.")} end embed_templates("*") From 5e451b130901112251970a496fb19129dcbc2e31 Mon Sep 17 00:00:00 2001 From: Urix <43704209+uri-99@users.noreply.github.com> Date: Sat, 21 Dec 2024 16:02:28 -0300 Subject: [PATCH 2/3] fix: :empty handle of format_number --- explorer/lib/explorer_web/live/numbers.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/explorer/lib/explorer_web/live/numbers.ex b/explorer/lib/explorer_web/live/numbers.ex index a9da97fe56..fbe872028d 100644 --- a/explorer/lib/explorer_web/live/numbers.ex +++ b/explorer/lib/explorer_web/live/numbers.ex @@ -1,5 +1,5 @@ defmodule Numbers do - def format_number(number) when is_nil(number) do + def format_number(number) when is_nil(number) or number == :empty do nil end From cb2aa1839c0337a0fc414179760cb18fd8780a45 Mon Sep 17 00:00:00 2001 From: Urix <43704209+uri-99@users.noreply.github.com> Date: Sat, 21 Dec 2024 16:02:40 -0300 Subject: [PATCH 3/3] fix: setting values in frontend --- .../live/pages/home/index.html.heex | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/explorer/lib/explorer_web/live/pages/home/index.html.heex b/explorer/lib/explorer_web/live/pages/home/index.html.heex index ae8defc57f..2c94c086ba 100644 --- a/explorer/lib/explorer_web/live/pages/home/index.html.heex +++ b/explorer/lib/explorer_web/live/pages/home/index.html.heex @@ -10,33 +10,29 @@ > <%= if @operators_registered != :empty do %> <%= @operators_registered %> - <% else %> - 0 <% end %> <.card_link - icon="hero-arrow-right-solid" - navigate={~p"/restake"} - title="Total Restaked" - subtitle={"(#{@restaked_amount_eth |> Helpers.format_number()} ETH)"}> - <%= if @restaked_amount_eth != :nil do %> - <%= @restaked_amount_usd |> Helpers.format_number() %> USD - <% else %> - 0 - <% end %> + icon="hero-arrow-right-solid" + navigate={~p"/restake"} + title="Total Restaked" + subtitle={ + if @restaked_amount_eth |> Helpers.format_number() != nil do + "(#{@restaked_amount_eth |> Helpers.format_number()} ETH)" + end + }> + <%= if @restaked_amount_usd |> Helpers.format_number() != nil do %> + <%= @restaked_amount_usd |> Helpers.format_number() %> USD + <% end %> <.card title="verified batches"> <%= if @verified_batches != :empty do %> <%= @verified_batches |> Helpers.format_number() %> - <% else %> - 0 <% end %> <.card title="Verified Proofs" class="-mt-0.5 md:mt-0"> <%= if @verified_proofs != :empty do %> <%= @verified_proofs |> Helpers.format_number() %> - <% else %> - 0 <% end %> <.live_component module={ContractsComponent} id="contracts_card" class="sm:col-span-2" />