blob: a40e5fa4646e060df6c9d7ad14ba5fa8baf41cd8 [file] [log] [blame]
# Copyright 2018 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//third_party/closure_compiler/closure_args.gni")
import("//third_party/closure_compiler/compile_js.gni")
import("//tools/grit/grit_rule.gni")
import("//ui/webui/resources/tools/generate_grd.gni")
grit("resources") {
enable_input_discovery_for_gn_analyze = false
source = "$target_gen_dir/resources.grd"
deps = [ ":build_grd" ]
outputs = [
"grit/omnibox_resources.h",
"grit/omnibox_resources_map.cc",
"grit/omnibox_resources_map.h",
"omnibox_resources.pak",
]
output_dir = "$root_gen_dir/chrome"
}
generate_grd("build_grd") {
grd_prefix = "omnibox"
out_grd = "$target_gen_dir/resources.grd"
input_files = [
"icon_tabs.svg",
"omnibox.css",
"omnibox_element.js",
"omnibox.html",
"omnibox_input.css",
"omnibox_input.js",
"omnibox.js",
"omnibox_output_column_widths.css",
"omnibox_output.js",
"output_results_group.css",
]
if (!is_android) {
input_files += [
"omnibox_popup.html",
"omnibox_popup.js",
]
}
input_files_base_dir = rebase_path(".", "//")
grdp_files = [ "$target_gen_dir/mojo_resources.grdp" ]
deps = [ ":build_mojo_grdp" ]
}
generate_grd("build_mojo_grdp") {
grd_prefix = "omnibox"
out_grd = "$target_gen_dir/mojo_resources.grdp"
deps = [ "//chrome/browser/ui/webui/omnibox:mojo_bindings_webui_js" ]
input_files = [ "omnibox.mojom-webui.js" ]
input_files_base_dir =
rebase_path("${root_gen_dir}/mojom-webui/chrome/browser/ui/webui/omnibox",
"$root_build_dir")
resource_path_rewrites = [ "omnibox.mojom-webui.js|chrome/browser/ui/webui/omnibox/omnibox.mojom-webui.js" ]
}
js_type_check("closure_compile") {
closure_flags = default_closure_args + mojom_js_args +
[ "js_module_root=" + rebase_path(".", root_build_dir) ]
deps = [
":omnibox",
":omnibox_element",
":omnibox_input",
":omnibox_output",
":omnibox_popup",
]
}
js_library("omnibox") {
deps = [
":omnibox_input",
":omnibox_output",
"//chrome/browser/ui/webui/omnibox:mojo_bindings_webui_js",
"//ui/webui/resources/js:cr.m",
"//ui/webui/resources/js:load_time_data.m",
"//ui/webui/resources/js:util.m",
]
}
js_library("omnibox_element") {
deps = [ "//ui/webui/resources/js:assert.m" ]
}
js_library("omnibox_input") {
deps = [ ":omnibox_element" ]
}
js_library("omnibox_output") {
deps = [
":omnibox_element",
":omnibox_input",
"//chrome/browser/ui/webui/omnibox:mojo_bindings_webui_js",
]
externs_list = [ "$externs_path/pending.js" ]
}
js_library("omnibox_popup") {
deps = [
"//chrome/browser/ui/webui/omnibox:mojo_bindings_webui_js",
"//ui/webui/resources/cr_components/omnibox:cr_autocomplete_match_list",
]
}