From b77f778da030d9f348868209007abc3dae37ff22 Mon Sep 17 00:00:00 2001 From: Lgdev07 Date: Wed, 11 Mar 2026 14:34:23 +0100 Subject: [PATCH] security improvement --- lib/ex_json_parser_web/live/home_live.ex | 18 +---------- .../live/home_live.html.heex | 2 +- .../live/home_live_test.exs | 30 +++++++------------ 3 files changed, 12 insertions(+), 38 deletions(-) diff --git a/lib/ex_json_parser_web/live/home_live.ex b/lib/ex_json_parser_web/live/home_live.ex index ff9a02f..f314bf8 100644 --- a/lib/ex_json_parser_web/live/home_live.ex +++ b/lib/ex_json_parser_web/live/home_live.ex @@ -31,10 +31,7 @@ defmodule ExJsonParserWeb.HomeLive do end end - defp format_json( - %{"json" => new_json, "elixir_map" => new_elixir_map}, - %{assigns: %{json: prev_json, elixir_map: prev_elixir_map}} = socket - ) do + defp format_json(%{"json" => new_json}, %{assigns: %{json: prev_json}} = socket) do cond do new_json != prev_json -> with {:ok, new_elixir_map} <- Jason.decode(new_json) do @@ -45,19 +42,6 @@ defmodule ExJsonParserWeb.HomeLive do |> assign(elixir_map: inspect(new_elixir_map))} end - new_elixir_map != prev_elixir_map -> - with {:ok, {:%{}, _, _}} <- Code.string_to_quoted(new_elixir_map), - {new_elixir_map, []} <- Code.eval_string(new_elixir_map), - {:ok, new_json} <- Jason.encode(new_elixir_map, pretty: true) do - {:ok, - socket - |> assign(json: new_json) - |> assign(error: nil) - |> assign(elixir_map: inspect(new_elixir_map))} - else - _ -> {:error, "Error when decoding Json to Elixir Map"} - end - true -> {:ok, socket} end diff --git a/lib/ex_json_parser_web/live/home_live.html.heex b/lib/ex_json_parser_web/live/home_live.html.heex index 28a44de..902b8de 100644 --- a/lib/ex_json_parser_web/live/home_live.html.heex +++ b/lib/ex_json_parser_web/live/home_live.html.heex @@ -52,7 +52,7 @@
Elixir map
-        
+