# Copyright 2026 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//ui/webui/resources/tools/build_webui.gni")
import("//ui/webui/resources/tools/optimize_webui.gni")

action("rewrite_mojo_binding_imports") {
  visibility = [ ":*" ]
  script = "//chrome/browser/resources/rewrite_imports.py"
  in_file = "$root_gen_dir/chrome/browser/ui/webui/omnibox/aim_eligibility/aim_eligibility.mojom-webui.ts"
  out_file = "$target_gen_dir/mojo/aim_eligibility.mojom-webui.ts"
  deps = [ "//chrome/browser/ui/webui/omnibox/aim_eligibility:mojo_bindings_ts__generator" ]
  outputs = [ out_file ]
  args = [
    rebase_path(in_file, root_build_dir),
    rebase_path(out_file, root_build_dir),
  ]
}

generate_grd("build_manifest_grdp") {
  grd_prefix = "aim_eligibility_extension"
  out_grd = "$target_gen_dir/manifest.grdp"
  input_files = [ "manifest.json" ]
  input_files_base_dir = rebase_path(".", "//")
  resource_path_prefix = "aim_eligibility_extension"
}

build_webui("build") {
  grd_prefix = "aim_eligibility_extension"
  grd_resource_path_prefix = "aim_eligibility_extension"

  in_folder = "../aim_eligibility"

  static_files = [ "aim_eligibility.html" ]

  extra_grdp_deps = [ ":build_manifest_grdp" ]
  extra_grdp_files = [ "$target_gen_dir/manifest.grdp" ]

  css_files = [ "app.css" ]

  ts_files = [
    "app.html.ts",
    "app.ts",
    "browser_proxy.ts",
  ]

  mojo_files_deps = [ ":rewrite_mojo_binding_imports" ]
  mojo_files = [ "$target_gen_dir/mojo/aim_eligibility.mojom-webui.ts" ]

  ts_deps = [
    "//third_party/lit/v3_0:build_ts",
    "//ui/webui/resources/cr_components/color_change_listener:build_ts",
    "//ui/webui/resources/cr_elements:build_ts",
    "//ui/webui/resources/js:build_ts",
    "//ui/webui/resources/mojo:build_ts",
  ]

  webui_context_type = "trusted_only"

  optimize = optimize_webui
  if (optimize) {
    optimize_webui_host = "chrome-extension://kgjeljgkbckpoekmgjfplammhcggiiaf"
    optimize_webui_in_files = [ "app.js" ]
  }
}
