diff --git a/apps/block_scout_web/lib/block_scout_web/templates/address_logs/_logs.html.eex b/apps/block_scout_web/lib/block_scout_web/templates/address_logs/_logs.html.eex
index e49adf8801..cf19ea6420 100644
--- a/apps/block_scout_web/lib/block_scout_web/templates/address_logs/_logs.html.eex
+++ b/apps/block_scout_web/lib/block_scout_web/templates/address_logs/_logs.html.eex
@@ -1,5 +1,20 @@
">
+ <% decoded_result = decode(@log, @log.transaction) %>
+ <%= case decoded_result do %>
+ <%= {:error, :contract_not_verified, _cadidates} -> %>
+
+ <%= gettext "To see accurate decoded input data, the contract must be verified." %>
+ <%= case @transaction do %>
+ <% %{to_address: %{hash: hash}} -> %>
+ <%= gettext "Verify the contract " %>
<%= gettext "here" %>
+ <% _ -> %>
+ <%= nil %>
+ <% end %>
+
+ <% _ -> %>
+ <%= nil %>
+ <% end %>
- <%= gettext "Transaction" %>
-
@@ -11,19 +26,7 @@
) %>
- <%= case decode(@log, @log.transaction) do %>
- <% {:error, :contract_not_verified} -> %>
- - <%= gettext "Decoded" %>
- -
-
- <%= gettext "To see decoded input data, the contract must be verified." %>
- <%= case @log.transaction do %>
- <% %{to_address: %{hash: hash}} -> %>
- <%= gettext "Verify the contract " %>
<%= gettext "here" %>
- <% _ -> %>
- <%= nil %>
- <% end %>
-
+ <%= case decoded_result do %>
<% {:error, :could_not_decode} -> %>
- <%= gettext "Decoded" %>
-
@@ -81,7 +84,61 @@
<% end %>
-
+
+ <% {:error, :contract_not_verified, results} -> %>
+ <%= for {:ok, method_id, text, mapping} <- results do %>
+ <%= gettext "Decoded" %>
+
+
+
+
" class="table thead-light table-bordered">
+
+ |
+ <%= gettext "Name" %> |
+ <%= gettext "Type" %> |
+ <%= gettext "Indexed?" %> |
+ <%= gettext "Data" %> |
+
+ <%= for {name, type, indexed?, value} <- mapping do %>
+
+
+ <%= case BlockScoutWeb.ABIEncodedValueView.copy_text(type, value) do %>
+ <% :error -> %>
+ <%= nil %>
+ <% copy_text -> %>
+
+
+
+ <% end %>
+ |
+ <%= name %> |
+ <%= type %> |
+ <%= indexed? %> |
+
+ <%= BlockScoutWeb.ABIEncodedValueView.value_html(type, value) %>
+ |
+
+ <% end %>
+
+
+ <% end %>
<% _ -> %>
<%= nil %>
<% end %>
diff --git a/apps/block_scout_web/lib/block_scout_web/templates/transaction_log/_logs.html.eex b/apps/block_scout_web/lib/block_scout_web/templates/transaction_log/_logs.html.eex
index b0afe771c1..a0922454a9 100644
--- a/apps/block_scout_web/lib/block_scout_web/templates/transaction_log/_logs.html.eex
+++ b/apps/block_scout_web/lib/block_scout_web/templates/transaction_log/_logs.html.eex
@@ -27,19 +27,7 @@
) %>
- <%= case decode(@log, @transaction) do %>
- <% {:error, :contract_not_verified} -> %>
- <%= gettext "Decoded" %>
-
-
- <%= gettext "To see decoded input data, the contract must be verified." %>
- <%= case @transaction do %>
- <% %{to_address: %{hash: hash}} -> %>
- <%= gettext "Verify the contract " %>
<%= gettext "here" %>
- <% _ -> %>
- <%= nil %>
- <% end %>
-
+ <%= case decoded_result do %>
<% {:error, :could_not_decode} -> %>
<%= gettext "Decoded" %>
diff --git a/apps/block_scout_web/priv/gettext/default.pot b/apps/block_scout_web/priv/gettext/default.pot
index d9998f00fe..520dc1d1ed 100644
--- a/apps/block_scout_web/priv/gettext/default.pot
+++ b/apps/block_scout_web/priv/gettext/default.pot
@@ -558,12 +558,13 @@ msgid "Must be set to:"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:50
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:53
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:106
#: lib/block_scout_web/templates/api_docs/_action_tile.html.eex:52
#: lib/block_scout_web/templates/api_docs/_eth_rpc_item.html.eex:59
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:19
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:68
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:121
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:56
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:109
msgid "Name"
msgstr ""
@@ -852,7 +853,7 @@ msgid "Total transactions"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:3
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:18
#: lib/block_scout_web/views/transaction_view.ex:262
msgid "Transaction"
msgstr ""
@@ -1129,13 +1130,12 @@ msgid "Static Call"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:16
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:28
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:34
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:31
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:37
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:90
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:32
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:44
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:52
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:105
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:40
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:93
msgid "Decoded"
msgstr ""
@@ -1144,12 +1144,6 @@ msgstr ""
msgid "Method Id"
msgstr ""
-#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:19
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:35
-msgid "To see decoded input data, the contract must be verified."
-msgstr ""
-
#, elixir-format
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:2
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:16
@@ -1157,18 +1151,16 @@ msgid "Transaction Inputs"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:22
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:10
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:11
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:9
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:38
msgid "Verify the contract "
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:22
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:10
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:11
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:9
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:38
msgid "here"
msgstr ""
@@ -1322,6 +1314,7 @@ msgid "To have guaranteed accuracy, use the link above to verify the contract's
msgstr ""
#, elixir-format
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:7
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:8
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:6
msgid "To see accurate decoded input data, the contract must be verified."
@@ -1782,10 +1775,11 @@ msgid "Constructor Arguments"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:63
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:66
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:119
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:31
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:81
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:134
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:69
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:122
msgid "Copy Value"
msgstr ""
@@ -1795,32 +1789,35 @@ msgid "Create2"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:53
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:118
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:56
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:109
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:175
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:21
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:71
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:124
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:191
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:59
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:112
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:179
msgid "Data"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:31
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:47
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:34
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:35
msgid "Failed to decode log data."
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:52
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:70
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:123
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:55
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:108
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:58
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:111
msgid "Indexed?"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:47
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:65
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:118
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:50
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:103
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:53
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:106
msgid "Log Data"
msgstr ""
@@ -1832,15 +1829,16 @@ msgid "Reward"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:88
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:161
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:145
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:149
msgid "Topics"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:51
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:54
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:107
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:20
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:69
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:122
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:57
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:110
msgid "Type"
msgstr ""
diff --git a/apps/block_scout_web/priv/gettext/en/LC_MESSAGES/default.po b/apps/block_scout_web/priv/gettext/en/LC_MESSAGES/default.po
index 585b389bc0..1626e8b6a7 100644
--- a/apps/block_scout_web/priv/gettext/en/LC_MESSAGES/default.po
+++ b/apps/block_scout_web/priv/gettext/en/LC_MESSAGES/default.po
@@ -558,12 +558,13 @@ msgid "Must be set to:"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:50
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:53
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:106
#: lib/block_scout_web/templates/api_docs/_action_tile.html.eex:52
#: lib/block_scout_web/templates/api_docs/_eth_rpc_item.html.eex:59
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:19
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:68
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:121
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:56
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:109
msgid "Name"
msgstr ""
@@ -852,7 +853,7 @@ msgid "Total transactions"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:3
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:18
#: lib/block_scout_web/views/transaction_view.ex:262
msgid "Transaction"
msgstr ""
@@ -1129,13 +1130,12 @@ msgid "Static Call"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:16
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:28
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:34
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:31
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:37
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:90
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:32
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:44
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:52
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:105
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:40
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:93
msgid "Decoded"
msgstr ""
@@ -1144,12 +1144,6 @@ msgstr ""
msgid "Method Id"
msgstr ""
-#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:19
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:35
-msgid "To see decoded input data, the contract must be verified."
-msgstr ""
-
#, elixir-format
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:2
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:16
@@ -1157,18 +1151,16 @@ msgid "Transaction Inputs"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:22
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:10
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:11
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:9
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:38
msgid "Verify the contract "
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:22
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:10
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:11
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:9
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:38
msgid "here"
msgstr ""
@@ -1323,6 +1315,7 @@ msgid "To have guaranteed accuracy, use the link above to verify the contract's
msgstr ""
#, elixir-format
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:7
#: lib/block_scout_web/templates/transaction/_decoded_input.html.eex:8
#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:6
msgid "To see accurate decoded input data, the contract must be verified."
@@ -1783,10 +1776,11 @@ msgid "Constructor Arguments"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:63
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:66
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:119
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:31
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:81
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:134
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:69
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:122
msgid "Copy Value"
msgstr ""
@@ -1796,32 +1790,35 @@ msgid "Create2"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:53
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:118
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:56
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:109
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:175
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:21
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:71
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:124
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:191
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:59
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:112
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:179
msgid "Data"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:31
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:47
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:34
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:35
msgid "Failed to decode log data."
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:52
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:70
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:123
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:55
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:108
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:58
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:111
msgid "Indexed?"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:47
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:65
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:118
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:50
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:103
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:53
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:106
msgid "Log Data"
msgstr ""
@@ -1833,15 +1830,16 @@ msgid "Reward"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:88
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:161
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:145
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:149
msgid "Topics"
msgstr ""
#, elixir-format
-#: lib/block_scout_web/templates/address_logs/_logs.html.eex:51
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:54
+#: lib/block_scout_web/templates/address_logs/_logs.html.eex:107
#: lib/block_scout_web/templates/transaction/_decoded_input_body.html.eex:20
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:69
-#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:122
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:57
+#: lib/block_scout_web/templates/transaction_log/_logs.html.eex:110
msgid "Type"
msgstr ""