diff --git a/apps/block_scout_web/lib/block_scout_web/controllers/address_contract_verification_controller.ex b/apps/block_scout_web/lib/block_scout_web/controllers/address_contract_verification_controller.ex
index ced6b9e845..febfadef62 100644
--- a/apps/block_scout_web/lib/block_scout_web/controllers/address_contract_verification_controller.ex
+++ b/apps/block_scout_web/lib/block_scout_web/controllers/address_contract_verification_controller.ex
@@ -16,11 +16,15 @@ defmodule BlockScoutWeb.AddressContractVerificationController do
render(conn, "new.html", changeset: changeset, compiler_versions: compiler_versions)
end
- def create(conn, %{
- "address_id" => address_hash_string,
- "smart_contract" => smart_contract
- }) do
- case Publisher.publish(address_hash_string, smart_contract) do
+ def create(
+ conn,
+ %{
+ "address_id" => address_hash_string,
+ "smart_contract" => smart_contract,
+ "external_libraries" => external_libraries
+ }
+ ) do
+ case Publisher.publish(address_hash_string, smart_contract, external_libraries) do
{:ok, _smart_contract} ->
redirect(conn, to: address_contract_path(conn, :index, address_hash_string))
diff --git a/apps/block_scout_web/lib/block_scout_web/templates/address_contract_verification/new.html.eex b/apps/block_scout_web/lib/block_scout_web/templates/address_contract_verification/new.html.eex
index 2808178963..76a979372b 100644
--- a/apps/block_scout_web/lib/block_scout_web/templates/address_contract_verification/new.html.eex
+++ b/apps/block_scout_web/lib/block_scout_web/templates/address_contract_verification/new.html.eex
@@ -49,6 +49,58 @@
<%= error_tag f, :contract_source_code, id: "contract-source-code-help-block", class: "text-danger", "data-test": "contract-source-code-error" %>
+
<%= gettext "Contract Libraries" %>
+
+
+ <%= label :external_libraries, :library1, gettext("1 Library Name") %>
+ <%= text_input :external_libraries, :library1_name, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library1, gettext("1 Library Address") %>
+ <%= text_input :external_libraries, :library1_address, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library2, gettext("2 Library Name") %>
+ <%= text_input :external_libraries, :library2_name, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library2, gettext("2 Library Address") %>
+ <%= text_input :external_libraries, :library2_address, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library3, gettext("3 Library Name") %>
+ <%= text_input :external_libraries, :library3_name, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library3, gettext("3 Library Address") %>
+ <%= text_input :external_libraries, :library3_address, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library4, gettext("4 Library Name") %>
+ <%= text_input :external_libraries, :library4_name, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library4, gettext("4 Library Address") %>
+ <%= text_input :external_libraries, :library4_address, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label :external_libraries, :library5, gettext("5 Library Name") %>
+ <%= text_input :external_libraries, :library5_name, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+
+
+ <%= label f, :library5, gettext("5 Library Address") %>
+ <%= text_input f, :library5_address, class: "form-control", "aria-describedby": "contract-name-help-block" %>
+
+